centos7 oracle_Centos7主机名变成bogon的原因及解决方法
問題描述
虛擬機在設置完靜態IP后,莫名其妙地主機名就變成了bogon,并且問題會穩定復現,就是說每次重啟都會。如下圖所示:
看著不順眼不說,聽說可能還會影響某些服務,如可能導致oracle安裝過程網絡配置出錯等問題,嚇得我趕緊想辦法改回來。
原理分析
查了一些資料,bogon是指那些不該出現在internet路由表的地址。
Linux在初始化系統時,會先判斷主機名,如果主機名是localhost或localhost.localdomain,則會獲取主機IP地址并執行DNS逆向解析,將解析到的結果賦值給HOSTNAME。問題是,有些DNS服務器,會將私有地址,保留地址這樣不應該出現在網絡上的IP地址解析成bogon。
解決方案1(推薦)
值得推薦的方案就是讓本地IP地址解析時不經過DNS服務器,直接使用hosts文件,直接將本機的IP地址解析為localhost。
具體的操作就是在/etc/hosts文件中追加一行:
192.168.196.3 localhost
上面代碼中前半段是自己系統的本地IP地址。
修改后的文件內容如下:
127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4 ::1 localhost localhost.localdomain localhost6 localhost6.localdomain6 192.168.196.3 localhost最后重啟電腦即可。
解決方案2
修改主機名,只要主機名不是localhost或者localhost.localdomain,操作系統就不會執行DNS反向解析等操作,問題自然也不會出現。
具體的操作是,修改/etc/sysconfig/network文件中HOSTNAME的值,下面的演示將把hostname修改為myname:
NETWORKING=yes HOSTNAME=myname當然,修改了hostname,也要修改對應的/etc/hosts文件,修改如下:
#127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4 127.0.0.1 myname #::1 localhost localhost.localdomain localhost6 localhost6.localdomain6 ::1 myname然后,重啟系統就行了。
但是,我要說但是了,Centos7以上使用的hostname的定義和修改與之前版本略有不同。可以使用下面的命令
hostnamectl set-hostname myname同樣的,這個命令也需要手動更新/etc/hosts,方法跟上面的一樣。
最后還是一如既往地重啟系統!
總結
以上是生活随笔為你收集整理的centos7 oracle_Centos7主机名变成bogon的原因及解决方法的全部內容,希望文章能夠幫你解決所遇到的問題。

- 上一篇: matlab简单程序实例视频,matla
- 下一篇: python绘制散点图的步骤_pytho