networkctl - 查询 Linux 中网络链接的状态
Networkctl 是一个命令行实用程序,用于查看网络设备及其连接状态的摘要。它允许您查询和控制 Linux 网络子系统。它是 Ubuntu 18.04 新版本 systemd 中的新命令之一。它显示 systemd-networkd 看到的网络链接的状态。
另请阅读:Linux 系统管理员网络管理、故障排除和调试指南
注意:在运行networkctl之前,请确保systemd-networkd正在运行,否则您将得到不完整的输出,并显示以下错误。
WARNING: systemd-networkd is not running, output will be incomplete.
您可以通过运行以下systemctl命令来检查systemd-networkd的状态。
sudo systemctl status systemd-networkd
● systemd-networkd.service - Network Service
Loaded: loaded (/lib/systemd/system/systemd-networkd.service; disabled; vendor preset: enabled)
Active: active (running) since Tue 2018-07-31 11:38:52 IST; 1s ago
Docs: man:systemd-networkd.service(8)
Main PID: 13682 (systemd-network)
Status: "Processing requests..."
CGroup: /system.slice/systemd-networkd.service
└─13682 /lib/systemd/systemd-networkd
Jul 31 11:38:52 TecMint systemd[1]: Starting Network Service...
Jul 31 11:38:52 TecMint systemd-networkd[13682]: vmnet8: Gained IPv6LL
Jul 31 11:38:52 TecMint systemd-networkd[13682]: vmnet1: Gained IPv6LL
Jul 31 11:38:52 TecMint systemd-networkd[13682]: enp1s0: Gained IPv6LL
Jul 31 11:38:52 TecMint systemd-networkd[13682]: Enumeration completed
Jul 31 11:38:52 TecMint systemd[1]: Started Network Service.
如果 systemd-networkd 未运行,您可以使用以下命令启动并使其在引导时启动。
sudo systemctl start systemd-networkd
sudo systemctlenable systemd-networkd
要获取有关网络链接的状态信息,请运行以下不带任何参数的 networkctl 命令。
networkctl
IDX LINK TYPE OPERATIONAL SETUP
1 lo loopback carrier unmanaged
2 enp1s0 ether routable unmanaged
3 wlp2s0 wlan off unmanaged
4 vmnet1 ether routable unmanaged
5 vmnet8 ether routable unmanaged
5 links listed.
要显示所有网络链接及其状态,请使用 -a
标志。
networkctl -a
IDX LINK TYPE OPERATIONAL SETUP
1 lo loopback carrier unmanaged
2 enp1s0 ether routable unmanaged
3 wlp2s0 wlan off unmanaged
4 vmnet1 ether routable unmanaged
5 vmnet8 ether routable unmanaged
5 links listed.
要获取现有链接及其状态的列表,请使用 list 命令(相当于使用 -a
标志),如图所示。
networkctl list
IDX LINK TYPE OPERATIONAL SETUP
1 lo loopback carrier unmanaged
2 enp1s0 ether routable unmanaged
3 wlp2s0 wlan off unmanaged
4 vmnet1 ether routable unmanaged
5 vmnet8 ether routable unmanaged
5 links listed.
要显示有关指定链接的信息,例如类型、状态、内核模块驱动程序、硬件和 IP 地址、配置的 DNS、服务器等,请使用 status 命令。如果不指定任何链接,则默认显示可路由链接。
networkctl status
● State: routable
Address: 192.168.0.103 on enp1s0
172.16.236.1 on vmnet1
192.168.167.1 on vmnet8
fe80::8f0c:7825:8057:5eec on enp1s0
fe80::250:56ff:fec0:1 on vmnet1
fe80::250:56ff:fec0:8 on vmnet8
Gateway: 192.168.0.1 (TP-LINK TECHNOLOGIES CO.,LTD.) on enp1s0
或者
networkctl status enp1s0
● 2: enp1s0
Link File: /lib/systemd/network/99-default.link
Network File: n/a
Type: ether
State: routable (unmanaged)
Path: pci-0000:01:00.0
Driver: r8169
Vendor: Realtek Semiconductor Co., Ltd.
Model: RTL8111/8168/8411 PCI Express Gigabit Ethernet Controller
HW Address: 28:d2:44:eb:bd:98 (LCFC(HeFei) Electronics Technology Co., Ltd.)
Address: 192.168.0.103
fe80::8f0c:7825:8057:5eec
Gateway: 192.168.0.1 (TP-LINK TECHNOLOGIES CO.,LTD.)
要显示 LLDP(链路层发现协议)状态,请使用 lldp 命令。
networkctl lldp
默认情况下,networkctl 的输出通过管道传输到寻呼机,您可以通过添加 –no-pager 标志来防止这种情况。
networkctl --no-pager
您还可以使用 --no-legend
选项打印没有列标题和页脚的输出。
networkctl --no-legend
要查看其帮助消息,请使用 -h
标志或查看其手册页以获取更多信息。
networkctl -h
OR
man networkctl
您还会发现以下 Linux 网络指南很有用:
- nload – 实时监控 Linux 网络带宽使用情况
- 10 个有用的“IP”命令来配置网络接口
- 在 Linux 中配置网络接口的 15 个有用的“ifconfig”命令
- 12 个 Tcpdump 命令——网络嗅探工具
就这样!在本文中,我们解释了如何使用 networkctl 命令查看连接到 Linux 系统的网络设备的摘要。使用下面的反馈表分享您的想法或提出任何问题。