Contact Us 1-800-596-4880

Configuring PROXY Protocol in Local Mode

For use cases when Flex Gateway is deployed behind a load balancer or other proxy service, configure PROXY protocol to preserve client IP addresses across multiple layers of NAT or TCP proxies.

In PROXY protocol, the load balancer or other proxy service sends the PROXY protocol header containing the client address and additional information to Flex Gateway. To learn more about PROXY protocol, see the HAProxy specification.

Enabling PROXY protocol only enables Flex Gateway to receive the PROXY protocol header. Your load balancer or other proxy service must support PROXY protocol to transmit the header.

20%

25%

20%

Before You Begin

Before enabling PROXY protocol for Flex Gateway, complete the following tasks:

Enable PROXY Protocol for Flex Gateway as a Linux Service

  1. Create a YAML configuration file in the Flex Gateway configuration directory:

    sudo touch /usr/local/share/mulesoft/flex-gateway/conf.d/proxy-protocol-config.yaml
  2. Update the file with the PROXY protocol configuration file:

    apiVersion: gateway.mulesoft.com/v1alpha1
    kind: Configuration
    metadata:
      name: config
    spec:
      proxyProtocol:
        enabled: true

Enable PROXY Protocol for Flex Gateway in a Docker Container

If you have already added a volume for a folder with your Flex Gateway configuration files, skip to the last step.
  1. Press Ctrl+C to stop your Flex Gateway and any replicas.

  2. Create a folder named app in the directory with your Flex Gateway configuration files.

  3. Restart your Flex Gateway with an additional volume for the new app directory:

    docker run --rm \
    -v "$(pwd)":/usr/local/share/mulesoft/flex-gateway/conf.d \
    -p 8080:8080 \
    mulesoft/flex-gateway
    Specify an optional name you want to assign to your Flex Replica by including the following: -e FLEX_NAME=<name-for-flex-replica> \.
  4. Create and save a YAML configuration file in your app folder with your PROXY protocol configuration details.

    apiVersion: gateway.mulesoft.com/v1alpha1
    kind: Configuration
    metadata:
      name: config
    spec:
      proxyProtocol:
        enabled: true

Enable PROXY Protocol for Flex Gateway in a Kubernetes Cluster

To configure PROXY protocol for Flex Gateway, create a new resource using a YAML configuration file with your PROXY protocol details.

apiVersion: gateway.mulesoft.com/v1alpha1
kind: Configuration
metadata:
  name: config
spec:
  proxyProtocol:
    enabled: true