bogon

今天打开终端发现提示行变成了bogon:username$,一开始还以为是因为我升级了mac os,出现了bogon这个了不得的新武器,结果一搜索,是bug,差点忘了原本这个位置是应该显示hostname的。

what's wrong?热心网友告诉我,因为“终端会向dns请求反向解析本地ip来获取域名,获取失败则显示hostname,然则dns错误地将本地ip判定为虚拟ip,因此返回了和虚拟ip对应的bogon。”

???这大概就是传说中的“每一个字我都认识,放到一起我就不懂了”吧。

dns,计算机网络学过的,但是还给老师了,所以还得羞惭地从dns百度起。

domine name system,域名和ip地址之间的电话簿。我们上网时都要连接一个dns服务器(通过设置本地dns地址),让这个服务器帮我们查找所访问域名对应的ip地址。本机的dns地址一般在联网时自动分配(DHCP机制来干这个事情),你也可以自己设置连一个大家用了都说好的dns服务器,比如Google的8.8.8.8.

终端hostname的显示过程,就像我从网友那里学来的,终端首先会向连接的dns服务器请求反向解析本地ip,试图获得本机域名,(可能一般都查不到?)结果上来说好像这一步只是走过场,终端最终会直接显示本机的hostname。问题出在哪里呢,连Wi-Fi的时候给我分配的这个dns服务器,它没有在第一步走过场,而是很认真地给我返回了一个错误的域名:bogon。bogon对应的是虚拟ip,该dns服务器查不到我的ip地址对应的域名,就作虚拟ip处理了,wrong!

经过以上分析,如果看bogon不顺眼,有两种办法:

1.换一个懂套路的dns服务器,比如大家用了都说好的Google 8.8.8.8,它会老实走过场,让你的hostname正常显示;

2.不要dns给你返回的这个bogon,自己去设置一下hostname,回到熟悉的世界。

我就不换了,看,机器也犯错,多么可爱的世界。

posted @ 2019-07-09 18:57  糯米_甜酒  阅读(1096)  评论(0编辑  收藏  举报