Ubuntu

如何將 IP 地址映射到 localhost

  • May 2, 2018

所以我有一個 IP 地址 5x.2x.2xx.1xx 我想映射到本地主機。在我的主機文件中,我有:

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

我想要完成的是,當我在這台機器上連接到 5x.2x.2xx.1xx 時,我會轉到 localhost。

我真正想要的是使用連接到 MySQL

mysql -uroot 5x.2x.2xx.1xx -p 而不是指向該IP地址,我想使用本地MySQL伺服器

當時它不起作用,因為它仍然重定向到伺服器的 IP (5x.2x.2xx.1xx)

我也試過: sudo service nscd restart with no lucky

/etc/hosts如果您想將特定的 DNS名稱映射到與實際不同的 IP 地址,則可以使用,但如果 IP 地址已經由應用程序指定,那麼基於操縱主機名解析的任何其他技術都將無用:應用程序已經有一個非常好的 IP 地址可以連接,所以它不需要任何主機名解析服務。

如果您想將發往指定IP 地址的流量重定向回您的本地系統,則需iptables要這樣做。

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

這會將來自您系統的任何傳出連接重定向到預設 MySQL 埠 5x.2x.2xx.1xx 的預設 MySQL 埠 3306 回到您自己系統的埠 3306。顯然,用真實的 IP 地址和埠號替換 5x.2x.2xx.1xx 和 3306。

上述命令將立即生效,但不會在重新啟動後持續存在,除非您執行其他操作以使設置持續存在,但也許您甚至不需要它?

引用自:https://unix.stackexchange.com/questions/441182