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. IT兄弟连 HTML5教程 CSS3揭秘 CSS规则的组成

    CSS和HTML一样都是由W3C制定的标准,本章中介绍的特性和功能还是来源于CSS1和CSS2(CSS2是根据CSS1扩展的).W3C也有新的版本更新,称为CSS3.虽然浏览器已经准备开始实现CSS3 ...

  2. 【Web开发】到底什么是短链接

    目录 什么是短链接 为什么使用短链接 节省发送的内容 提升用户体验 便于链接追踪,分析点击来源 一定程度上保护原始网站链接 短链接生成平台 短链接生成原理 参考 今天无意中看到一个名词--" ...

  3. let definitions are not supported by current javascript

    修改为es6即可

  4. C#时间戳与时间相互转换

    代码: using System; using System.Collections.Generic; using System.Linq; using System.Text; using Syst ...

  5. Python菜鸟文本处理4种方法

    自从认识了python这门语言,所有的事情好像变得容易了,作为小白,逗汁儿今天就为大家总结一下python的文本处理的一些小方法. 话不多说,代码撸起来. python大小写字符互换 在进行大小写互换 ...

  6. javaWeb核心技术第十四篇之easyui

    网站是分为网站的前台和网站的后台. 前台--给用户看的 例如:商城 后台--给管理员看的 例如:商城后台 目的:用来添加维护数据 BootStrap:jsp 页面显示,效果好,美观,适合作为用户界面. ...

  7. 高强度学习训练第十六天总结: Spring框架中的设计模式

    仔细想了想..没必要重复造轮子. 每天复习啥了就直接CTRL CV了 https://gitee.com/SnailClimb/JavaGuide/blob/master/docs/system-de ...

  8. JS基础语法---内置对象

    js学习中三种对象: 内置对象----js系统自带的对象 自定义对象---自己定义的构造函数创建的对象 浏览器对象---BOM的时候讲 内置对象: Math Date String Array Obj ...

  9. iOS中点击按钮复制指定内容

    话不多说,直接上图和代码:

  10. redis5.0.4安装配置

    1.下载redis wget http://download.redis.io/releases/redis-5.0.4.tar.gz 2.解压到opt目录 tar -zxvf redis-5.0.4 ...