Tom*_*Tom 241 linux hostname defaults loopback localhost
这可能是一个有点菜鸟的问题,但我正在查看新安装的 Xubuntu 上的 /etc/hosts 并看到了这一点:
127.0.0.1 localhost
127.0.1.1 myhostname
Run Code Online (Sandbox Code Playgroud)
在我使用过的大多数 'nix 中,第二行被省略,如果我想将我的主机名添加到主机文件中,我会这样做:
127.0.0.1 localhost myhostname
Run Code Online (Sandbox Code Playgroud)
在任何实际意义上,这两个文件之间有区别吗?
ein*_*lum 54
总结链接到的信息:
/etc/hosts将机器的完全限定域名翻译成其永久 IP 地址时有一个条目(值得商榷)很有用。debian-installer,更具体地说,它的netcfg组件目前(至少到 2013 年 3 月)创建了这个条目。127.0.1.1使用环回接口,由您自己的机器回答,就像127.0.0.1但是是一个不同的条目/etc/hosts,可以与127.0.0.1if/when 必要时分开考虑。Thomas Hood 解释添加此条目如下:
[这] 将确保如果 UNIX 主机名被解析,那么它将始终是它自己的规范主机名
但:
从长远来看,UNIX 主机名根本不应该放在 /etc/hosts 中。
Bri*_*mas 14
我自己很好奇,我不喜欢任何其他答案,因为他们似乎至少没有回答我正在寻找的问题。
答案: 回顾这个文档,似乎 Thomas 说的是“在环回上给它另一个专用 ip 使其成为规范的”。
两者都指向您的环回。使用以下 127.0.1.1 是环回上的实际 IP,而 127.0.0.1 是设备本身或环回上的另一个 IP。两者都在同一个子网中,代表环回,但由 ip 分隔。它们是等效的 dns 明智的,但由于具有专用 ip 而分开。
关键是,您可以像这样将所有条目放在一行上
127.0.0.1 localhost localhost.domain www.myfakednsname.com myakednsname.com
Run Code Online (Sandbox Code Playgroud)
如果您的主机名是本地的,这意味着没有映射到实际 Internet ip 的全局 Internet DNS 条目,那么在这种情况下,Thomas 说您需要拥有第二个条目行,像这样将其专用于(规范)。
127.0.0.1 localhost localhost.localdomain
127.0.1.1 myfakednsname
Run Code Online (Sandbox Code Playgroud)
小智 6
我读了几个答案,坦白说我有点困惑。
我首先尝试了解什么是规范主机名。
我能说的是 @cmroanirgo 说得对,在我的 Ubuntu 笔记本电脑上调用
hostname --fqdn
Run Code Online (Sandbox Code Playgroud)
像/etc/hosts这样配置
127.0.0.1 localhost
127.0.1.1 laptop
Run Code Online (Sandbox Code Playgroud)
返回laptop,而更改文件如下
127.0.0.1 localhost laptop
Run Code Online (Sandbox Code Playgroud)
返回localhost。
我不知道这会产生什么影响,除了以下事实:如果您有绑定到主机名的软件,并且您需要在机器内部与它对话,则不要期望能够使用“localhost”主机名在此设置中完成这项工作,因为它们最终会解析两个不同的单独地址。
| 归档时间: |
|
| 查看次数: |
157548 次 |
| 最近记录: |