Point IP para uma instância do aplicativo

1

Eu estava pensando como vou apontar um endereço IP estático que comprei para uma instância de aplicativo no meu servidor, usando um IP diferente do que estou apontando para o servidor principal?

Isso me confunde completamente, eu sei de dois comandos que estão relacionados, mas eu não sei como forçá-los a apontar o IP para uma determinada porta no meu localhost. Eu acho que eles são ARP e rota. Eu poderia estar completamente errado.

Tudo o que quero fazer é apontar diferentes endereços IP para diferentes instâncias de Java.

Também estou usando o CentOS 5.9

    
por Conner Stephen McCabe 05.02.2013 / 21:45

1 resposta

3

Os endereços IP não apontam para portas ou aplicativos. Eles apontam para máquinas (virtuais) ou contêineres ou contextos.

Um aplicativo escuta em uma porta, que pode ser (dependendo do que passar para bind ) em todos os endereços IP da máquina ou em um endereço IP. Portanto, a melhor coisa a fazer seria fazer com que seu aplicativo chame bind com o IP correto. Você pode ter dois programas diferentes ouvindo na porta 80 (por exemplo), desde que eles estejam ouvindo em um endereço IP diferente. Muitos programas permitem que você especifique o IP para escutar, por vezes, usando a sintaxe 10.0.0.1:1234 , onde 10.0.0.1 é o IP e 1234 a porta. Quando você deixa de fora o IP, o padrão é 0.0.0.0, que é todos os endereços da máquina.

Se o seu aplicativo não puder fazer isso, você poderá, como sugerem os goldilocks, contorná-lo usando o NAT. Basicamente, você tem cada aplicativo ouvir em uma porta diferente, por exemplo, 8080 e 8081. Em seguida, você configura as regras NAT para redirecionar a porta 80:

iptables -t nat -A PREROUTING -d 10.0.0.1 -p tcp --dport 80 -j DNAT --to-destination 8080
iptables -t nat -A PREROUTING -d 10.0.0.2 -p tcp --dport 80 -j DNAT --to-destination 8081

Você pode adicionar outras regras de firewall para bloquear o acesso direto às portas 8080 e 8081, é claro.

Você também pode usar o ipvs para fazer isso. Ou um servidor proxy. Existem provavelmente várias outras maneiras.

    
por 05.02.2013 / 23:46