在 18.04 LTS 中查找 DHCP 租用和 DNS 信息

J. *_*ann 14 server networking dns dhcp

我对 Linux 和 Ubuntu 比较陌生,所以请耐心等待。我正在设置一个 Ubuntu 18.04 LTS VM,它将通过 postfix 充当邮件中继。我已经安装了它,并且已经配置了这些设置以匹配几年前设置的旧的现有中继服务器,至少在我可以确定的范围内。我的问题是,来自这个新中继服务器的连接超时,我可以在 /var/log/mail.log 文件中看到。由于我们的网络设置方式,此服务器设置为通过 DHCP 获取 IP。我在一个附属于大学的小组工作,但我们不直接隶属于 IT 人员,所以我的小组有自己的 IT 部门,我也是其中的一员。为了在大学网络上获得任何东西,我们必须注册设备的 MAC 地址,然后在大学完成注册后,

我想不通的是两方面:第一,如何查找我的租约信息。其次,与此相结合,我如何才能看到该租约中包含哪些 DNS 服务器。我使用了许多命令来尝试查找该信息,或者以某种方式从 Ubuntu 收集它,但无济于事。我还安装了 Ubuntu 桌面,因为这是以前的邮件中继服务器所拥有的,所以我可以尽可能 1:1 设置我的设置,但我无法通过系统设置的网络部分找到任何信息任何一个。我浏览了http://manpages.ubuntu.com/manpages/bionic/en/man1/以查找列表中包含 'dhcp' 或 'dns' 的任何内容,但似乎找不到我可以扔给它的命令确定我的问题的答案。

另一个奇怪的事情是,我的网络接口被标记为“ens160”而不是“eth0”,我认为这很奇怪。无论如何,我正在尝试确定我的 DHCP 和 DNS 信息是什么,因为我可以 ping 网络内部和外部的一些主机名,但我可能会丢失一些内部 DNS 服务器条目,在这种情况下,我需要知道如何添加这些,但我也想确保我可以清楚地看到我的设置是什么。不幸的是,ifconfig不会返回比 IP、MAC 和接口名称信息更多的信息。无论如何,抱歉中篇小说,但我只是想弄清楚如何在我的新服务器上查看完整的网络详细信息,以便我可以更好地解决手头的问题。

小智 12

这个问题有一个公认的答案,但我想添加一些让我感到困惑的细节,并且在将此信息应用于Ubuntu 18.04 Server时可能会帮助其他人。

虽然18.04桌面(也许还有一些其他的分支)使用NetworkManager的覆盖对方的回答中,服务器版本使用的混合systemd-networkddhclient

netplan是一个更高级别的系统,并且是调用NetworkManageror systemd- 所以无论您运行哪种类型的 Ubuntu,它都是相关的)

如另一个 SE 问题 ( https://superuser.com/q/1338510/312285 ) 所述,您可以使用systemd名为的转储工具提取 DHCP 活动的高级日志journalctl

在我的系统上,ajournalctl | grep -Ei 'dhcp'给出的输出如下所示:

[...]
Jan 10 23:26:35 ip-10-215-153-240 dhclient[576]: Internet Systems Consortium DHCP Client 4.3.5
Jan 10 23:26:35 ip-10-215-153-240 dhclient[576]: For info, please visit https://www.isc.org/software/dhcp/
Jan 10 23:26:35 ip-10-215-153-240 dhclient[576]: DHCPDISCOVER on ens5 to 255.255.255.255 port 67 interval 3 (xid=0x13d08672)
Jan 10 23:26:35 ip-10-215-153-240 dhclient[576]: DHCPREQUEST of 10.215.153.240 on ens5 to 255.255.255.255 port 67 (xid=0x7286d013)
Jan 10 23:26:35 ip-10-215-153-240 dhclient[576]: DHCPOFFER of 10.215.153.240 from 10.215.153.193
Jan 10 23:26:35 ip-10-215-153-240 dhclient[576]: DHCPACK of 10.215.153.240 from 10.215.153.193
Jan 10 23:26:37 ip-10-215-153-240 systemd-networkd[594]: ens5: DHCPv4 address 10.215.153.240/26 via 10.215.153.193
[...]
Run Code Online (Sandbox Code Playgroud)

然后,正如 doug-smythies 所指出的,netplan ip leases可以在列出的接口上运行a以获取较低级别的数据。

所以对于上面, anetplan ip leases ens5给出:

# This is private data. Do not parse.
ADDRESS=10.215.153.240
NETMASK=255.255.255.192
ROUTER=10.215.153.193
SERVER_ADDRESS=10.215.153.193
BROADCAST=10.215.153.255
MTU=9001
T1=1800
T2=3150
LIFETIME=3600
DNS=10.215.152.2
DOMAINNAME=ec2.internal
HOSTNAME=ip-10-215-153-240
CLIENTID=xxxxx
Run Code Online (Sandbox Code Playgroud)

  • 谢谢迈克,发现很有帮助。我不使用 NetworkManager,因为我在服务器上。我的 dhcp.conf 中有一个语法错误,但在其他地方没有看到报告。它与 journalctl 完美结合。 (2认同)

Dou*_*ies 5

18.04 改用了netplan,很多网络相关的东西和以前的版本不一样。

您应该能够在/var/lib/NetworkManager. 接口名称为 的计算机示例ens5

$ ls -l /var/lib/NetworkManager
total 24
-rw-r--r-- 1 root root  918 May 22 07:41 dhclient-e1b925e7-2196-3d00-9556-64ba0a6834f1-ens5.lease
-rw-r--r-- 1 root root 2322 May 22 07:41 dhclient-ens5.conf
-rw-r--r-- 1 root root  939 Apr 20 11:57 NetworkManager-intern.conf
-rw-r--r-- 1 root root   68 May 22 07:40 NetworkManager.state
-rw------- 1 root root   32 Apr 20 11:57 secret_key
-rw-r--r-- 1 root root   61 May 22 07:41 timestamps

$ cat /var/lib/NetworkManager/dhclient-e1b925e7-2196-3d00-9556-64ba0a6834f1-ens5.lease
lease {
  interface "ens5";
  fixed-address 192.168.111.31;
  option subnet-mask 255.255.255.0;
  option dhcp-lease-time 86400;
  option routers 192.168.111.1;
  option dhcp-message-type 5;
  option dhcp-server-identifier 192.168.111.1;
  option domain-name-servers 192.168.111.1;
  option broadcast-address 192.168.111.255;
  option domain-name "smythies.com";
  renew 3 2018/05/23 00:34:42;
  rebind 3 2018/05/23 11:29:07;
  expire 3 2018/05/23 14:29:07;
}
lease {
  interface "ens5";
  fixed-address 192.168.111.31;
  option subnet-mask 255.255.255.0;
  option routers 192.168.111.1;
  option dhcp-lease-time 85668;
  option dhcp-message-type 5;
  option domain-name-servers 192.168.111.1;
  option dhcp-server-identifier 192.168.111.1;
  option broadcast-address 192.168.111.255;
  option domain-name "smythies.com";
  renew 3 2018/05/23 01:43:25;
  rebind 3 2018/05/23 11:30:37;
  expire 3 2018/05/23 14:29:06;
}
Run Code Online (Sandbox Code Playgroud)