我对 Linux 和 Ubuntu 还比较陌生,所以请耐心等待。我正在设置一个 Ubuntu 18.04 LTS VM,它将通过 postfix 充当邮件中继。我已经安装了它,并已将这些设置配置为与几年前设置的旧现有中继服务器相匹配,至少据我所知是这样。我的问题是,来自这个新中继服务器的连接超时了,我可以在 /var/log/mail.log 文件中看到。由于我们的网络设置方式,此服务器设置为通过 DHCP 获取 IP。我为一个隶属于大学的团队工作,但我们不是 IT 人员的直接成员,所以我的团队有自己的 IT 部门,我也是其中的一员。为了在大学网络上获取任何东西,我们必须注册设备的 MAC 地址,然后一旦在大学完成注册,他们就会分配一个 IP 地址,设备就会获得租约。
我无法弄清楚的是两个方面:首先,如何查找我的租约信息。其次,与此相关的是,我如何查看该租约中包含哪些 DNS 服务器。我使用了许多命令尝试查找该信息,或以某种方式从 Ubuntu 中收集该信息,但无济于事。我还安装了 Ubuntu 桌面,因为那是以前的邮件中继服务器所具有的,这样我就可以尽可能地与我的设置保持一致,而且我也无法通过系统设置的网络部分找到任何信息。我查看了http://manpages.ubuntu.com/manpages/bionic/en/man1/对于列表中带有“dhcp”或“dns”的任何内容,但似乎找不到可以向其发出的命令来确定我的问题的答案。
另一件奇怪的事情是,我的网络接口标记为“ens160”而不是“eth0”,我觉得这很奇怪。无论如何,我试图确定我的 DHCP 和 DNS 信息是什么,因为我可以 ping 网络内部和外部的一些主机名,但我可能缺少一些内部 DNS 服务器条目,在这种情况下,我需要知道如何添加这些条目,但我也想确保我能清楚地看到我的设置是什么。不幸的是,除了 IP ifconfig
、MAC 和接口名称信息之外,没有返回更多内容。无论如何,很抱歉写得这么长,但我只是想弄清楚如何在我的新服务器上查看完整的网络详细信息,这样我就可以更好地解决手头的问题。
答案1
这个问题有一个公认的答案,但我想添加一些让我困惑的细节,这些细节可能会帮助其他人将这些信息应用于Ubuntu 18.04服务器。
虽然 18.04 桌面版(也许还有其他一些分支)使用NetworkManager
其他答案中介绍的方法,但服务器systemd-networkd
发布使用了和的混合dhclient
。
(netplan
是一个更高级别的系统,也就是所谓的“NetworkManager
或” systemd
——所以无论你运行的是哪种类型的 Ubuntu,它都是相关的)
正如在另一个 SE 问题中指出的那样(https://superuser.com/q/1338510/312285systemd
)您可以使用名为的转储工具来提取 DHCP 活动的高级日志journalctl
。
在我的系统上,journalctl | 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
[...]
然后,正如 doug-smythies 所说,netplan ip leases
可以在列出的接口上运行以获取较低级别的数据。
因此对于上述内容,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
答案2
18.04 已改为使用netplan
,并且许多与网络相关的内容与以前的版本不同。
您应该能够在 下手动找到您的 dhcp 租约信息,其中还应包括您的 DNS 信息/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;
}