您的位置:首页 > 运维架构 > Linux

linux主机名为什么是bogon,以及如何修改成localhost

2018-03-05 09:55 549 查看
今天登录linux,发现主机名是bogon,虽然不影响使用,但是看着很不爽,于是想了解一下,为什么会发生这种情况,在csdn上找了到了一个文章,原文如下:
起因:公司网络接口做了接口认证,虚拟机桥接至物理网卡无法完成认证进行网络访问,无奈之下只能讲虚拟机网络模式更改为NAT模式,更改完成之后进行ssh登录,发现主机名发生了变化。

更改NAT模式之前
[root@localhost ~]#
[root@localhost ~]#
[root@localhost ~]#
更改为NAT模式之后
[root@bogon ~]#
[root@bogon ~]#
发现主机名变成了bogon,很气,看着很不顺眼,想办法更改回来。

查看几个相关文件

[root@localhost ~]# vi /etc/sysconfig/network

NETWORKING=yes
HOSTNAME=localhost.localdomain

[root@localhost ~]# vi /etc/hosts

127.0.0.1   localhost localhost.localdomain localhost4 localhost4.localdomain4
::1         localhost localhost.localdomain localhost6 localhost6.localdomain6
network和hosts中的主机名都正常,都是localhost

[root@bogon ~]# hostname
bogon
直接使用hostname发现还是返回了bogon,并不是文件中的localhost,查看dns文件

[root@localhost ~]# cat /etc/resolv.conf
; generated by /sbin/dhclient-script
search localdomain
nameserver 192.168.13.2
发现多了一行search localdomain,应该是这行配置导致的问题,resolv.conf中的配置是由vmware 8网卡自动下发的,所以更改此处配置无用,准备曲线救国

这块的配置说明是要在加载配置文件后,对该主机的IP地址进行解析,返回的domain域名作为主机名回显至命令行,尝试解析本机IP

[root@localhost ~]# nslookup 192.168.13.128
Server:        192.168.13.2
Address:    192.168.13.2#53

Non-authoritative answer:
128.13.168.192.in-addr.arpa    name = bogon.

Authoritative answers can be found from:

[root@localhost ~]#

果然本机的IP地址被解析为了bogon,那么说明一个问题就是,如果resolv.conf中配置了search localdomain,那么此处得到的主机名则优先于hosts和network文件中的配置

要解决这个问题,最简单的方案就是让其解析时不经过dns,使用hosts文件,直接将本机的IP地址解析为localhost即可

127.0.0.1   localhost localhost.localdomain localhost4 localhost4.localdomain4
::1         localhost localhost.localdomain localhost6 localhost6.localdomain6
192.168.13.128  localhost
重启服务器,登录后查看主机名恢复正常。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  linux