我们并不是每天都会谈论 Linux 的命令行。但正如一些读者指出的那样,你们也想学习一些命令行的技巧。
因此,我整理了一份基本的 Linux 网络命令清单,这些命令在我的大学时代帮助了我,让我对如何在网络方面使用 Linux 有了坚定的认识。
这些命令将帮助你设置网络,以及解决你在 Linux 系统中可能遇到的各种网络问题。
Linux 中的基本网络命令
这个汇编包括了 CLI 实用程序,它们将帮助你排除网络问题、监控数据包和连接的设备,以及更多。
在我展示这些命令的一些细节之前,让我分享一下我今天要讨论的所有命令的简要概述。
命令 | 说明 |
---|---|
ip | 操纵路由来分配和配置网络参数 |
traceroute | 识别数据包到达主机的路径 |
tracepath | 在追踪网络主机的路径时,获取最大传输单元 |
ping | 通常用于检查主机和服务器之间的连接情况 |
ss | 获得有关网络套接字的详细信息 |
dig | 给出所有关于 DNS 名称服务器的必要信息 |
host | 输出特定域和主机的 IP 地址 |
hostname | 主要用于输出和更改主机名 |
curl | 在网络上通过各种协议传输数据 |
mtr | ping 和traceroute 的组合,用于诊断网络 |
whois | 获取有关注册的域名、ip 地址、名称服务器等信息 |
ifplugstatus | 检测本地以太网设备的链接状态 |
iftop | 监视与带宽有关的统计信息 |
TCPdump | 数据包嗅探和分析工具,用于捕获、分析和过滤网络流量 |
ethtool | 允许用户配置以太网设备 |
nmCLI | 用于网络连接的故障排除工具 |
nmap | 主要用于审计网络安全 |
bmon | 开源工具,用于监控实时带宽 |
firewalld | 配置防火墙规则的 CLI 工具 |
iperf | 测量网络性能和调整的工具 |
speedtest-cli | speedtest.net的 CLI 工具,用于检查网速 |
vnstat | 主要用于监控网络流量和带宽消耗 |
现在,让我们用例子和更深入的方式讨论它们。
请注意,并不是所有的命令都会预装。我已经添加了针对 Debian/Ubuntu 的说明。对于其他发行版,请使用你的软件包管理器进行安装。
1、ip 命令
ip
命令是最基本的,但也是最重要的,你会发现系统管理员经常使用它,其用于从操纵路由到分配和配置网络参数。
虽然用例可能无穷无尽,但让我向你展示 ip
命令的最基本用例(寻找 IP 地址)。
ip address
同样,你也可以使用 ip
命令来持续监控设备的状态,请使用monitor
参数而不是我们之前用来获取 IP 地址的address
参数:
ip monitor
2、traceroute
使用 traceroute
命令,你可以确定数据包到达主机的路线。而且,当你想询问数据包的传输情况和数据包所走的跳数时,它可能相当有用。
默认情况下,你的系统可能没有安装 traceroute
,如果你使用的是 Debian 及派生的发行版(包括 Ubuntu),安装时只需使用一个命令:
sudo apt install traceroute
例如,追踪到 google.com的数据包:
traceroute google.com
默认情况下,traceroute
会使用 IPv4,但是你可以通过使用-6
选项来改变这一行为,该选项将指示traceroute
使用 IPv6。让我告诉你怎么做:
3、tracepath
tracepath
命令用于发现 MTU(最大传输单元),同时追踪到网络主机的路径。它与我上面讨论的traceroute
很相似,但它不需要sudo
权限,而且也没有像它那么多功能。
但是,首先什么是 MTU?
MTU 就是可以在网络上传输或接收的最大帧或数据包。
现在,让我们看一下 google.com的tracepath
的基本例子:
tracepath google.com
同样,你可以使用 -b
选项同时打印出 IP 地址和主机名。
tracepath -b google.com
4、ping
ping 命令(数据包网络飞龙探云手Packet Internet Groper