网络管理员的日常职责(如管理、监控、配置和故障排除)不需要您学习复杂的第三方工具。 相反,您可以使用大多数 Linux 发行版预装的现成工具来执行所有这些任务。
本文重点介绍网络管理员职责中的网络故障排除部分,并涵盖在不同类别下解决这些问题的工具。 它进一步介绍了这些实用程序如何在实际场景中提供帮助。
1.ifconfig
ifconfig 是一个命令行实用程序,用于 Linux/Unix 操作系统中的接口配置。 网络管理员还可以使用它在配置脚本的帮助下查询和管理接口参数。
它可以帮助您启用或禁用网络接口,并允许您将 IP 地址和网络掩码分配给选定的接口。 您还可以查看所有可用接口、IP 地址、硬件地址和活动接口的最大传输单元大小。
您可以使用 up/down 参数激活/停用任何接口,如下所示:
sudo ifconfig up eth0
sudo ifconfig down eth0
为接口分配 IP 地址:
sudo ifconfig eth0 192.168.120.5 netmask 255.255.255.0
但是,此实用程序在 Linux 发行版中并不容易使用,您可能会收到错误“ifconfig:找不到命令“。您可以通过安装 网络工具 使用您的发行版的包管理器进行打包。
在 Ubuntu/Debian 上:
sudo apt-get install net-tools
在 Fedora、CentOS 和其他基于 RPM 的发行版:
yum install net-tools
在 Arch Linux 上:
sudo pacman -S net-tools
2. ip
ip是好旧的替代品 如果配置. 但是,它的功能范围涵盖了两层 TCP/IP 协议,即数据链路层和网络层。
它显示网络接口并配置网络设备,就像 ifconfig 实用程序一样。 它还通过添加/删除 ARP 缓存条目来显示和修改内核路由表。
要显示所有接口及其详细信息:
ip addr show
添加和删除接口:
ip a add 192.168.120.174 dev eth0
ip a del 192.168.120.174 dev eth0
要启用/禁用接口的 ARP 协议,请使用 on/off 选项:
ip link set dev eth0 arp on
ip link set dev eth0 arp off
3. 平
ping 实用程序可帮助您识别网络和主机的可用性。 它检查主机是否可访问或服务是否正在运行。 您还可以使用 ping 命令检查网络连接问题,例如高延迟和包丢失。
ping 发送 ICMP(Internet 控制消息协议)回显请求消息并等待 ICMP 回显应答数据包以检查主机可用性。 输出包含发送和接收的消息总数以及数据包到达目的地所需的时间。
ping 8.8.8.8
4. 网络统计
netstat 是一个命令行实用程序,可帮助发现已连接和正在侦听的 TCP、UDP 和 UNIX 套接字。 它显示有关路由表、侦听端口和信息统计信息的信息。
您可以通过键入以下内容列出侦听或关闭的连接:
netstat -a
仅列出侦听 TCP 连接:
netstat -tl
作者截图
它还允许您使用 TCP 连接列出进程的 PID 和程序名称:
netstat -ptl
5.主机
host 是一个最小但最强大的 CLI 实用程序,它执行 DNS 查找并将主机名解析为 IP 地址,反之亦然。 除了解决 DNS 服务器问题外,它还显示和验证 NS 和 MX DNS 记录类型以及 ISP DNS 服务器。
要在 Google 网站上查找 NX:
host -t ns google.com
您还可以通过运行以下命令查找 MX 记录:
host -n -t mx google.com
6. ARP
arp 命令通过添加/删除地址并显示它们来操作系统 ARP 表的缓存。 ARP 代表地址解析协议,并将 IP 地址映射到机器的 MAC 地址。 因此,arp 命令执行任务并属于内部可用的工具 网络工具 包裹。
不带任何参数运行命令查看表格内容:
arp
作者截图
您还可以通过提供 IP 地址找到映射到特定 IP 的 MAC 地址:
arp <ip_address>
7.跟踪路由
一旦 ping 实用程序提供了有关网络连接和数据包到达目的地所需总时间的信息,您就可以使用 traceroute 命令深入了解数据包到达目标主机的路径并解决该问题。
输出显示数据包路由以及源和目标之间的所有中间主机及其响应时间。
例如,以下命令将所有跃点从本地计算机输出到目标主机 8.8.8.8 (Google):
traceroute 8.8.8.8
该实用程序使用 IP 数据包的生存时间 (TTL) 字段,当数据包到达跃点时,它会减少一个数字,从而说明其在网络中的寿命。
该实用程序还使用往返时间 (RTT) 的概念,可确保每个中间节点丢弃数据包并发送回 ICMP 错误消息,这有助于 traceroute 测量数据包到达沿途每一跳所需的时间。
此功能可帮助网络管理员确定 Internet 连接问题的根本原因并解决路由中的确切问题。
8. 挖
dig 是 Domain Information Groper 的首字母缩写词,用于收集与 DNS 相关的信息并解决 DNS 问题。
dns 命令输出显示包含 DNS 记录的文件中可用的信息,并帮助网络管理员验证主机到 IP 地址名称解析是否正常工作。
您可以按如下方式执行 DNS 查找查询:
dig google.com
同样,您可以查询与域关联的所有类型的 DNS 记录 任何 选项:
dig google.com ANY
9. Wireshark
Wireshark 是一款功能强大且用途广泛的开源数据包分析工具。 它实时捕获来自您选择的接口卡的流量。 它允许网络管理员根据协议/端口捕获流量,以进行监控和故障排除。
除了捕获过滤器外,它还有一个显示过滤器,其中包含各种选项,可帮助您查看关注的流量。
Linux 上的网络故障排除
网络故障排除是网络管理员日常活动的一部分。 知道在没有一个工具或具有更广泛功能的情况下使用哪种工具对于有效排除各种网络状况的故障同样重要。
您可以了解有关使用 Wireshark 分析网络流量和使用 ss 命令分析网络连接的更多信息。