我刚刚在本地网络上设置了一台 CentOS 5.5 机器,并尝试通过编辑/etc/sysconfig/network
文件来修改主机名。当我在本地登录时,对主机名的更改会反映出来,并且似乎运行正常。当我从 Windows 通过 PuTTY 打开 SSH 会话时,我在提示符下看到以下内容:
[root@? ~]# cat /etc/sysconfig/network
NETWORKING=yes
NETWORKING_IPV6=yes
HOSTNAME=mini.local
[root@? ~]# sysctl kernel.hostname
kernel.hostname = ?
[root@? ~]# hostname
?
[root@? ~]# hostname -f
hostname: Unknown server error
还有一些其他症状可能有助于解决此问题。我可以通过 IP 从我的 Windows 机器 ping 通 CentOS 框,但不能通过主机名。此外,当我查看“连接的设备”时,我的 Netgear 路由器不显示主机名,但我确实看到了列出的 mac 地址和正确的 IP。
我怎样才能使主机名在整个网络中正确传播?
答案1
您需要在 LAN 中的每台机器上设置 DNS 或主机文件。
答案2
在 redhat 中,必须在两个地方更改主机名:
/etc/sysconfig/网络
/etc/主机
在 hosts 文件中添加一行,其中包含 sysconfig/network 中写入的 ip 和名称。我不记得你是否应该重新启动。尝试:
服务网络重启
答案3
首先使用以下方法获取机器上的正确主机名这参考自 centos wiki
然后你需要在你的 dns 服务器上设置一个反向 dns 记录(可能是你的路由器,但我认为你不能直接在家庭用户 netgears 上执行此操作),以便网络反映你为机器选择的主机名
这可能对你命令有用,但对 dns 设置没用,slicehost dns/电子邮件文章
答案4
只需在那里使用system-config-network
并设置您的主机名。