Não é possível usar o IP externo no Hetzner VPS

3

Eu mudei o meu modelo de servidor virtual no Hetzner recentemente. O novo tem um endereço IPv4 externo no qual é acessível da Internet (como deveria). Mas eu não posso usar este IP externo na configuração: iptables regras não tem efeito, openvpn servidor não pode ligar um ouvinte em qualquer porta usando esse IP, etc. Eu encontrei um endereço IP 'local' ( 172.31.x.x ) em ifconfig output, e se eu usá-lo na configuração, tudo funciona como um encanto.

No meu servidor antigo, consegui usá-lo em qualquer lugar. Então, eu estou apenas pensando: por que o IP externo não funciona para o meu novo servidor? SO é Ubuntu 15.04

    
por bakatrouble 28.09.2015 / 13:42

2 respostas

6

O Hetzner parou de designar endereços IPv4 públicos para servidores virtuais. Tanto quanto eu posso dizer esta mudança aconteceu quando eles mudaram o nome do produto de VQ para CX. O uso de NAT não é mencionado na descrição do produto.

Os servidores virtuais encomendados em 2012 e 2013 ainda têm seu endereço IPv4 público hoje. Mas os servidores virtuais encomendados em 2016 só têm um endereço RFC1918 e o Hetzner não encaminhará um endereço IPv4 público para tal servidor virtual.

Eles ainda alocam um endereço IPv4 público dedicado para cada servidor virtual, que eles NAT para o endereço RFC1918 atribuído. Hetzner acredita que isso não é um problema, porque é um NAT de 1: 1.

Como você descobriu, isso é propenso a erros ao configurar o servidor. Você tem que saber sobre esse NAT. E você tem que procurar o mapeamento sempre que você configura algo. Para o primeiro servidor virtual, entramos em tal configuração que foi configurada incorretamente duas vezes nos primeiros dias devido a isso.

Qualquer software que dependa do conhecimento do endereço IPv4 público será interrompido ou precisará de configuração especial. Além disso, alguns VPN e túnel IP podem ter problemas porque os pacotes encapsulados não serão NAT.

Se você tiver estabelecido que esses possíveis problemas não afetam o uso pretendido, e se você estiver confortável em ter que levar em conta o mapeamento entre endereços públicos e privados ao fazer alterações na configuração, poderá aceitar a situação.

No entanto, esteja ciente de que a maioria das implementações de NAT é stateful. Se o NAT é realmente stateful, você pode experimentar conexões TCP protelar quando o estado é perdido.

Eu não sei se o NAT usado por Hetzner é stateful ou stateless. A maneira mais óbvia que eu poderia pensar em testar a stateful é tunelizar o estabelecimento de conexões e desabilitar o túnel quando uma conexão TCP é estabelecida. Infelizmente, esse tipo de tunelamento é exatamente o que não funciona, então, para realizar esse experimento, seria necessário replicar a configuração 1: 1 NAT primeiro. Eu não tentei este experimento bastante complicado.

Estas são as opções que você tem:

  • Aceite que seu tráfego passará por um NAT de 1: 1 com as desvantagens que apresenta.
  • Faça todo o tráfego importante no IPv6 - como o Hetzner faz o roteamento do tráfego IPv6 corretamente sem NAT.
  • Mude para um servidor dedicado (supondo que eles ainda obtenham um endereço IPv4 público, o que é difícil de descobrir, já que o uso de NAT não é mencionado em nenhum lugar na descrição do produto).
  • Mude para um provedor diferente.
por 29.04.2016 / 19:11
1

Como você está alugando de Hetzner, eu acho que você está falando alemão, então aqui está a resposta diretamente de wiki de suporte do Hetzner :

Warum hat meine VM die IP 172.31.1.100?

oder auch:

Warum hat meine VM eine andere IP als im Robot angegeben?

Warum hat meine VM eine private IP?

Bei den CX Modellen ist die IPv4-Adresse im vServer eine private IP, die 1:1 per NAT auf die öffentliche IPv4 Adresse umgesetzt wird. Aktuell ist die private IP bei allen gleich: 172.31.1.100. Die öffentliche IP wird im Hetzner Robot angezeigt.

Em inglês :

Why does my VM have the IP 172.31.1.100?

Or also:

Why does my VM have a different IP from the one shown in the Robot?

Why does my VM have a private IP?

With the CX models the IPv4 address of the virtual server is a private IP, which is configured 1:1 via NAT on the public IP. Currently the private IP is the same for all: 172.31.1.100. The public IP is displayed in the Robot.

    
por 28.09.2015 / 16:41