Como forçar uma conexão a um determinado host para uso em um IP de origem específico?

3

Ao usar as páginas amarelas do Shoutcast2, há um problema realmente irritante: ele sempre usa o IP padrão que o sistema usa para uma conexão de saída para se registrar, mesmo que o servidor esteja configurado para escutar em um ip diferente. preciso mencionar que isso não faz sentido e o sistema YP inutilizável. A marcação de todos os outros IPs dos sistemas como obsoletos não é uma opção; Eu não quero que o IP do stream seja o IP padrão para outras conexões de saída.

Então, o que estou procurando é uma maneira de fazer com que essas conexões (sempre para yp.shoutcast.com:80) usem um determinado endereço IP de origem. Uma ferramenta existente seria perfeita, mas uma solução que requer codificação insuficiente também seria boa. Eu também tenho acesso root na máquina para que as soluções baseadas no iptables sejam ainda melhores.

    
por ThiefMaster 02.10.2012 / 08:48

2 respostas

3

O iptables pode fazer isso facilmente com o alvo SNAT:

iptables -t nat -A POSTROUTING -j SNAT \
    -o eth0 -p tcp --dport 80 --destination yp.shoutcast.com \
    --to-source $STREAM_IP
    
por 02.10.2012 / 09:42
1
ip route add 205.188.87.240 dev eth0 src $SRC_ADDR
    
por 04.10.2012 / 20:48

Tags