AskOverflow.Dev

AskOverflow.Dev Logo AskOverflow.Dev Logo

AskOverflow.Dev Navigation

  • 主页
  • 系统&网络
  • Ubuntu
  • Unix
  • DBA
  • Computer
  • Coding
  • LangChain

Mobile menu

Close
  • 主页
  • 系统&网络
    • 最新
    • 热门
    • 标签
  • Ubuntu
    • 最新
    • 热门
    • 标签
  • Unix
    • 最新
    • 标签
  • DBA
    • 最新
    • 标签
  • Computer
    • 最新
    • 标签
  • Coding
    • 最新
    • 标签
主页 / server / 问题 / 764672
Accepted
Bridgey
Bridgey
Asked: 2016-03-19 11:34:41 +0800 CST2016-03-19 11:34:41 +0800 CST 2016-03-19 11:34:41 +0800 CST

当我的 LAN 有 DNS 时,在 Debian Jessie 上设置主机名的正确方法是什么?

  • 772

这是在我的家庭局域网上,它有一个 DNS 服务器(Bind9)和一个 DHCP 服务器(dhcpd)。

我的台式机从 DHCP 服务器获取其 IP 地址,其中包括mylan.

所以,我的台式机的 FQDN 是mydesktop.mylan.

Debian 约定似乎是/etc/hostname应该只包含主机的短名称,所以mydesktop.

但是呢/etc/hosts?

条目应该是什么,short 或 FQDN?

127.0.0.1  localhost
127.0.1.1  mydesktop.mylan  mydesktop

有约定吗?推荐?

如果 FQDN 在其中/etc/hosts不会“覆盖”DNS 解析吗?这有关系吗?

hostname
  • 2 2 个回答
  • 1028 Views

2 个回答

  • Voted
  1. Best Answer
    Diamond
    2016-03-19T16:22:30+08:002016-03-19T16:22:30+08:00

    如果您查看hostname的联机帮助页,它可能会为您指明正确的方向。还从 Linux Network Administrator's Guide, 2nd Edition 中设置主机名和配置名称服务以及 O'reilly 的名称服务和解析器配置很好地解释了 linux 中的名称解析问题。我想这是足够好的资源来帮助你开始。

    问题是,互联网以及名称解析和 dns 的概念随着时间的推移而发展,我们今天发现的许多事情都有历史原因。

    要回答您的问题,您可以简单地在/etc/hostname文件中设置您的主机规范名称。内核可以通过hostname命令访问该名称。现在这通常与dns无关。

    该/etc/hosts文件的存在是为了帮助少数客户端(以及本地系统)进行名称解析,并且当没有可用的 dns 服务器时。

    现在,文件中定义了 linux 系统将如何决定使用什么来进行名称解析/etc/nsswitch.conf。文件的部分内容示例可能如下所示:

    # /etc/nsswitch.conf
    #
    # Example configuration of GNU Name Service Switch functionality.
    # Information about this file is available in the `libc6-doc' package.
    
    hosts:          files dns
    

    第一行hosts表示,系统会/etc/hosts先查询文件,再查询dns服务器进行名称解析。

    如您所见,如果您有一个可用的 dns,则无需在/etc/hosts文件中添加主机名条目。哪个优先,由/etc/nsswitch文件定义。

    /etc/hosts 文件的限制是,它仅对本地系统可见,并且必须手动维护它(编辑/添加/删除 ip/主机名),并且无法帮助网络中的其他系统从中解析主机名文件。这就是 LAN 中所有计算机都可以访问的集中式主机文件的想法出现的原因,并由此演变出了 DNS 服务器的想法。

    • 1
  2. zymhan
    2016-03-19T12:14:29+08:002016-03-19T12:14:29+08:00

    我总是使用本地主机名和 FQDN 配置我的 /etc/hosts 文件。

    根据 /etc/hosts手册页:

       127.0.1.1       thishost.mydomain.org  thishost
       192.168.1.10    foo.mydomain.org       foo
       192.168.1.13    bar.mydomain.org       bar
       146.82.138.7    master.debian.org      master
    

    如果 FQDN 在 /etc/hosts 中,那不会“覆盖” DNS 解析吗?这有关系吗?

    是的,您的主机文件将始终覆盖 DNS 解析,因为这是您的本地 DNS 解析器首先检查的内容。但是,这在我能想到的任何网络配置中都不是问题,除非您出于某种原因需要您的客户端要求 DNS 服务器解析客户端自己的主机名。

    • 0

相关问题

  • 如何避免使用主机名 Macintosh-2?

  • 将主机名解析为内部 BIND 域中的域名

  • 命名约定 [重复]

  • 专用网络的顶级域/域后缀?

  • 对于具有许多不同服务的少数服务器来说,一个好的主机名约定?

Sidebar

Stats

  • 问题 205573
  • 回答 270741
  • 最佳答案 135370
  • 用户 68524
  • 热门
  • 回答
  • Marko Smith

    新安装后 postgres 的默认超级用户用户名/密码是什么?

    • 5 个回答
  • Marko Smith

    SFTP 使用什么端口?

    • 6 个回答
  • Marko Smith

    命令行列出 Windows Active Directory 组中的用户?

    • 9 个回答
  • Marko Smith

    什么是 Pem 文件,它与其他 OpenSSL 生成的密钥文件格式有何不同?

    • 3 个回答
  • Marko Smith

    如何确定bash变量是否为空?

    • 15 个回答
  • Martin Hope
    Tom Feiner 如何按大小对 du -h 输出进行排序 2009-02-26 05:42:42 +0800 CST
  • Martin Hope
    Noah Goodrich 什么是 Pem 文件,它与其他 OpenSSL 生成的密钥文件格式有何不同? 2009-05-19 18:24:42 +0800 CST
  • Martin Hope
    Brent 如何确定bash变量是否为空? 2009-05-13 09:54:48 +0800 CST
  • Martin Hope
    cletus 您如何找到在 Windows 中打开文件的进程? 2009-05-01 16:47:16 +0800 CST

热门标签

linux nginx windows networking ubuntu domain-name-system amazon-web-services active-directory apache-2.4 ssh

Explore

  • 主页
  • 问题
    • 最新
    • 热门
  • 标签
  • 帮助

Footer

AskOverflow.Dev

关于我们

  • 关于我们
  • 联系我们

Legal Stuff

  • Privacy Policy

Language

  • Pt
  • Server
  • Unix

© 2023 AskOverflow.DEV All Rights Reserve