Como mapear um endereço IP para localhost

0

Então eu tenho um endereço IP 5x.2x.2xx.1xx Eu quero mapear para localhost. No meu arquivo de hosts, eu tenho:

cat /etc/hosts
127.0.1.1 test test
127.0.0.1 localhost

# The following lines are desirable for IPv6 capable hosts
::1 ip6-localhost ip6-loopback
fe00::0 ip6-localnet
ff00::0 ip6-mcastprefix
ff02::1 ip6-allnodes
ff02::2 ip6-allrouters
ff02::3 ip6-allhosts

5x.2x.2xx.1xx 127.0.0.1

O que eu quero realizar é que quando eu me conectar nesta máquina a 5x.2x.2xx.1xx, eu vou para o localhost.

O que eu realmente quero é conectar ao MySQL usando

mysql -uroot 5x.2x.2xx.1xx -p e ao invés de apontar para aquele endereço IP eu quero usar o servidor MySQL local

No momento, ele não está funcionando, já que ele ainda redireciona para o IP do servidor (5x.2x.2xx.1xx)

Eu também tentei: sudo service nscd restart sem sorte

    
por user1532587 02.05.2018 / 02:35

2 respostas

2

/etc/hosts pode ser usado se você quiser mapear um nome DNS específico para um endereço IP diferente do que ele realmente tem, mas se o endereço IP já estiver especificado pelo aplicativo, esse e qualquer outro outras técnicas baseadas na manipulação da resolução do nome do host serão inúteis: o aplicativo já possui um endereço IP perfeitamente bom para se conectar, portanto, ele não precisa de nenhum serviço de resolução de nomes de host.

Se você quiser redirecionar o tráfego que está saindo para um endereço IP especificado de volta ao sistema local, precisará de iptables para isso.

sudo iptables -t nat -I OUTPUT --dst 5x.2x.2xx.1xx -p tcp --dport 3306 -j REDIRECT --to-ports 3306

Isto irá redirecionar quaisquer conexões de saída do seu sistema para a porta padrão do MySQL 3306 de 5x.2x.2xx.1xx de volta para a porta 3306 do seu próprio sistema. Substitua o 5x.2x.2xx.1xx e o 3306 pelo endereço IP real e pelos números de porta, obviamente.

O comando acima será efetivo imediatamente, mas não persistirá durante uma reinicialização, a menos que você faça alguma outra coisa para tornar as configurações persistentes, mas talvez você nem precise disso?

    
por 02.05.2018 / 07:26
0

Não, não funcionará - quando o sistema vê um IP, ele ignora as pesquisas de DNS (o que também inclui a pesquisa de arquivos de hosts). E se fosse para o trabalho que (provavelmente) vai quebrar as coisas. E está de volta no arquivo de qualquer maneira.

ip.add.re.ss  hostname

Então você quer

127.0.1.1  5x.2x.2xx.1xx 

E não vai funcionar. E eu ainda tenho a sensação de que vai quebrar as coisas.

O que vai funcionar é usar um nome e alterar o nome conforme necessário.

IE,

127.0.1.1 dbhost

E mude para

5x.2x.2xx.1xx dbhost

Conforme necessário. E sempre conecte com mysql -h dbhost -u root -p não importa qual IP o nome esteja apontando para ...

    
por 02.05.2018 / 02:52