在debian linux上更改和同步主机名/ip地址更改
为了更改静态ip地址,我将在debian linux上更改和同步主机名/ip地址更改,linux,debian,ip-address,hostname,Linux,Debian,Ip Address,Hostname,为了更改静态ip地址,我将/etc/network/interfaces的内容设置为 auto lo iface lo inet loopback allow-hotplug eth0 iface eth0 inet static address <newaddress> netmask <netmask> gateway <gateway> dns-nameservers <dns1> <dns2> auto-lo iface l
/etc/network/interfaces
的内容设置为
auto lo
iface lo inet loopback
allow-hotplug eth0
iface eth0 inet static
address <newaddress>
netmask <netmask>
gateway <gateway>
dns-nameservers <dns1> <dns2>
auto-lo
iface lo inet环回
允许热插拔eth0
iface eth0 inet静态
住址
网络掩码
网关
dns名称服务器
然后执行ifdown eth0和&ifup eth0
要更改主机名,我执行以下操作
执行hostname
将/etc/hostname
的内容设置为
将/etc/hosts
中的
替换为
问题
ip地址和主机名更改都不会生效
如果我更改ip地址并ping主机名,它仍然解析为旧地址
如果我更改主机名并ping新主机名,它将无法解析为ip
如果我更改主机名并ping旧主机名,它仍然可用并解析当前ip地址
我重新启动了机器,它仍然以同样的方式运行
我错过了什么
家长网络在这方面能发挥作用吗
还请注意,我的机器认为主机名在我更改后会更新。我认为这实际上不是问题,arp缓存可以解释这种行为 ARP工具操纵或显示内核的IPv4网络邻居,这在某种程度上也包括您的主机 arp命令有许多开关,您可以使用这些开关,例如,以下命令:
arp -n
此命令打印出arp缓存项的列表
不幸的是,没有命令刷新它,因此,您有2个选项
选项1:等待缓存更新(不会花费很长时间)
选项2:运行以下非常基本的脚本,您会看到:
#!/bin/sh
for i in `awk -F ' ' '{ if ( $1 ~ /[0-9{1,3}].[0-9{1,3}].[0-9{1,3}].[0-9{1,3}]/ ) print $1 }' /proc/net/arp` ;
do
arp -d $i
done
该脚本不是我的,我已经报告了我通常运行的唯一脚本,该脚本最初取自这个很好的示例:
我希望这在某种程度上有所帮助。更改/etc/hostname会影响更改终端上显示的主机名、欢迎消息、日志中的主机名以及系统使用的任何其他主机名。这些都是虚荣的改变 更改/etc/hosts将更改您的本地主机名解析(即将ip地址转换为主机名,反之亦然)DNS无法解析的任何内容或您希望在本地覆盖的任何内容。默认情况下,本地文件覆盖网络分辨率。这是在/etc/nsswitch中确定的,它表示首先使用本地文件,然后使用dns进行主机解析
这里需要记住的重要一点是,这些更改不会影响网络上的othesr如何确定此主机的ip地址或名称,当然,这是通过DNS或其本地/etc/hosts文件来处理的。yeah resolv.conf用于DNS。它处理名字和任何与互联网有关的东西。比如平。无论您是否有服务器,都可以在本地解析dns,因此主机名/ect主机也可以处理dns。当您连接时,您的resolv.conf将从您的isp更新,或者您可以手动更改它/在桥接接口上设置一些更动态的东西您是否更新了您的resolv.conf?resolv.conf是否用于dns服务器更改?在我的情况下,我不会改变它们。正如你说的“替换为in/etc/hosts”,但是你已经用/etc/hosts中的新ip替换了旧ip谢谢你指出缺少的步骤。但即使在改变之后,它仍然是一样的。不起作用。