Normalmente, esse cabeçalho é inserido apenas por um proxy de encaminhamento quando há um proxy upstream para identificar o originador, caso contrário, se um proxy de encaminhamento inserisse esse cabeçalho para solicitações pela Internet, normalmente seria considerado um vazamento de informações potencialmente confidenciais.
Portanto, raramente é usado para proxies de encaminhamento e usado principalmente por proxies reversos para identificar o cliente baseado na Internet no servidor Web de backend, já que os servidores da Web atrás de proxies reversos geralmente vêem todas as conexões como provenientes da interface interna do reverso proxy.
Alternativas para isso são - o Protocolo de Proxy, que envia esses dados pela conexão antes da solicitação real em um formato diferente - inverter NAT, que mantém o IP do cliente externo na conexão de retorno
Outras vezes você vê X-Forwarded-For, na prática, é onde alguns clientes inserem o cabeçalho para tentar obter privilégios elevados, se o proxy reverso passar o valor por exemplo.