Envie solicitações PHP de IP dedicado em vez de IP compartilhado [fechado]

1

Eu configurei um IP dedicado para um site (usando directadmin), mas todas as solicitações php de saída são enviadas do IP compartilhado do servidor. O resultado do código a seguir é sempre o IP compartilhado.

$a = file_get_contents("http://mxtoolbox.com/WhatIsMyIP/");
print $a;

Eu preciso enviar solicitações de IP dedicado porque meu gateway de pagamento só aceita solicitações desse IP.

Preciso adicionar regras iptables para enviar todas as solicitações do IP dedicado ou existe uma maneira melhor?

    
por hpn 13.02.2015 / 18:30

2 respostas

4

Defina uma rota para o processador de pagamento por meio do IP dedicado. O comando ip route add é seu amigo.

    
por 13.02.2015 / 19:10
1

Isso deve estar no StackOverflow. Você precisa criar um contexto para o seu soquete.

$opts = array(
    'socket' => array(
        'bindto' => '10.10.1.1:0',
    )
);

$context = stream_context_create($opts);
$a = file_get_contents("http://mxtoolbox.com/WhatIsMyIP/", false, $context);
print $a;

Neste exemplo, isso se ligará ao IP 10.10.1.1. A porta 0 é usada para permitir que o sistema operacional escolha a porta.

Caso contrário, você terá que alterar sua rota padrão para todo o tráfego ou determinar o endereço IP do site que você está tentando acessar. O último dos quais pode não ser confiável se eles usarem uma rede distribuída ou mudarem de endereço.

    
por 13.02.2015 / 19:30