Linux问题记录——主机名变成了bogon

摘要:本文主要记录了主机名变成bogon的原因以及解决办法。

问题重现

主机名在一次登录后,变成了bogon,此后每次登录Linux系统时都是bogon。

 Connecting to 192.168.35.128:...
Connection established.
To escape to local shell, press 'Ctrl+Alt+]'. Last login: Mon Nov :: from 192.168.35.1
[root@bogon ~]#

解决办法

修改hosts文件(重启后问题解决)

修改etc目录下的hosts文件,加入主机地址对应的主机名:

重启系统,问题解决:

 Connecting to 192.168.35.128:...
Connection established.
To escape to local shell, press 'Ctrl+Alt+]'. Last login: Mon Nov :: from 192.168.35.1
[root@localhost ~]#

修改主机名(重启后仍然存在问题)

在CentOS 7中修改主机名就比较方便,一条命令即可:

 [root@bogon ~]# hostnamectl set-hostname localhost
[root@bogon ~]#

不过这种办法重启时候还是不管用:

 Connecting to 192.168.35.128:...
Connection established.
To escape to local shell, press 'Ctrl+Alt+]'. Last login: Mon Nov :: from 192.168.35.1
[root@bogon ~]#

问题说明

排查过程

问题出现的时候,先查看network配置文件:

 [root@bogon ~]# cat /etc/sysconfig/network
# Created by anaconda
[root@bogon ~]#

并没有发现什么问题,然后查看hosts配置文件:

 [root@bogon ~]# cat /etc/hosts
127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4
:: localhost localhost.localdomain localhost6 localhost6.localdomain6 [root@bogon ~]#

也没有什么问题,hosts中的主机名是localhost,然后看下解析后的主机名:

 [root@bogon ~]# hostname
bogon
[root@bogon ~]#

发现变成了bogon,所以判断可能是DNS出了问题,查看DNS配置文件:

 [root@bogon ~]# cat /etc/resolv.conf
# Generated by NetworkManager
search localdomain
nameserver 192.168.35.2
[root@bogon ~]#

发现多了一行 search localdomain ,应该是这行配置导致的问题。

使用nslookup命令查看对本机地址的解析情况:

 [root@bogon ~]# nslookup 192.168.35.128
128.35.168.192.in-addr.arpa name = bogon. Authoritative answers can be found from: [root@bogon ~]#

发现解析到的名字是bogon,那么说明一个问题就是,如果resolv.conf中配置了 search localdomain ,那么此处得到的主机名则优先于hosts和network文件中的配置。

出现原因

通过在网上查询资料得知,bogon是指那些不该出现在internet路由表中的地址。

Linux在初始化系统时,会先判断主机名,如果主机名是localhost或localhost.localdomain,则会获取主机IP地址并执行DNS逆向解析,将解析到的结果赋值给HOSTNAME。问题是,有些DNS服务器会将私有地址和保留地址这样不应该出现在网络上的IP地址解析成bogon,这就导致了登录的时候发现主机地址变成了bogon。

修改hosts文件,将本机地址直接解析为localhost,不再经过DNS服务器,也就不会被解析为bogon。

除了修改hosts文件,还可以更换一个DNS服务器,将主DNS随意改一个地址保存设置,然后再改回原IP,保存设置,然后注销当前用户,重新登录即可。但这种方式本人并没有试过,不确定可不可以。

Linux问题记录——主机名变成了bogon的更多相关文章

  1. Linux下修改主机名步骤

    Linux下修改主机名为gpdb 步骤一.运行vi /etc/sysconfig/network命令 NETWORKING=yesHOSTNAME=gpdb 步骤二.运行hostname gpdb命令 ...

  2. linux @后面的主机名如何修改

    @后面的为linux系统的主机名 临时修改方法:执行 hostname 主机名再执行 bash 永久修改方法:修改配置文件/etc/sysconfig/network修改参数HOSTNAME=主机名永 ...

  3. centos 主机名突然变成bogon的解决方法

    主机名突然变成bogon,访问网络可能会出现问题(也可能没问题,我的就没问题),可能用到主机名的服务(比如说:mysql)可能也会出现访问不了.   所以我们需要解决以下问题,本人的解决方法: 主机名 ...

  4. linux下更改主机名方法hostname

    一.永久修改修改/etc/sysconfig/network,在里面指定主机名称HOSTNAME=然后执行命令hostname 主机名这个时候可以注销一下系统,再重登录之后就行了. 或者修改/etc/ ...

  5. 我用过的Linux命令--修改主机名

    下面的所有设置都是在CentOS中实验的,其他的Linux系统的玩法是一样的,只是配置文件的目录可能不一样. 局域网中的主机名类似于广域网中的域名,修改主机名有两种方式: (1)在当前会话中修改主机名 ...

  6. redhat系列linux系统 修改主机名的正确方法

    ##注:无特别说明,以下称呼的linux系统统一视为redhat系linux redhat系列linux系统 如果想修改主机名 很多人可能都会以为是: $hostname NEW-NAME 或者在 / ...

  7. Linux 中改变主机名的 4 种方法

    今天,我们将向你展示使用不同的方法来修改主机名.你可以从中选取最适合你的方法. 使用 systemd 的系统自带一个名为 hostnamectl 的好用工具,它可以使我们能够轻易地管理系统的主机名. ...

  8. 【Linux 运维】linux系统修改主机名

    主机名的修改:  1.命名解释: [root@localhost~]# 分别代表: 用户名(root) 主机名(localhost) 当前路径(~,当前用户的home目录) 权限标志位(#代表root ...

  9. Linux之修改主机名(永久生效)

    Linux系统安装好后,都会有默认的主机名,这里以CentOS系统为例,默认的主机名为localhost.localdomain,为了便于使用,我们常常需要修改主机名,下面演示的是永久更改主机名的方法 ...

随机推荐

  1. window.innerHeight和document.documentElement.clientHeight区别

    今天有人问我这个问题,做了个小例子来记录一下子. 首先这两个都是获取可视区域的高度,那他们有什么区别呢 1.window.innerHeight属于BOM(浏览器对象模型),而document.doc ...

  2. 学习强国docker文件用法

    学习强国docker用法 docker文件地址   https://github.com/fuck-xuexiqiangguo/docker 构建  docker  docker build -t D ...

  3. C#函数(构造函数)的重载

    using System; namespace test { class Program { static void Main(string[] args) { Cat cat = new Cat() ...

  4. 资深程序员告诉你为什么要用Python3而不是Python2

    经常遇到这样的问题:<现在开始学习python的话,是学习python2.x还是学习python3.x比较好?>,这也是许多初学者会遇到的问题,我们的答案是python 3.x. 为了帮助 ...

  5. requeests模块请求常用参数的写法整理

    主要是针对写法 一.requests.get requests.get是调用了requests.request('get', url, params=params, **kwargs) 1.url 协 ...

  6. 剑指offer笔记面试题9----用两个栈实现队列

    题目:用两个栈实现一个队列.队列的声明如下,请实现它的两个函数appendTail和deleteHead,分别完成在尾部插入节点和在队列头部删除节点的功能. 测试用例: 往空的队列里添加.删除元素. ...

  7. URL跳转绕过姿势

    POC "@" http://www.target.com/redirecturl=http://whitelist.com@evil.com "\" http ...

  8. Saltstack_使用指南14_无master

    1. 主机规划 salt 版本 [root@salt100 ~]# salt --version salt (Oxygen) [root@salt100 ~]# salt-minion --versi ...

  9. 如何获取数据泵dm和dw进程的 Strace (Doc ID 1411563.1)

    How To Get A Strace Of The Data Pump dm And dw Process(es) (Doc ID 1411563.1) APPLIES TO: Oracle Dat ...

  10. webpack打包 The 'mode' option has not been set, webpack will fallback to

    webpack 打包报错 The 'mode' option has not been set, webpack will fallback to 'production' for,Module no ...