系统管理员的日常任务包括使用网络和与其连接的设备。 通常,管理员工作站的角色是由安装了某些Linux发行版的计算机扮演的。 Linux实用程序和命令将在材料中讨论,我们今天将发布其翻译版本,其中包括一系列复杂程度不一的工具-从简单到高级,这些工具旨在解决各种网络管理任务并诊断网络问题。

在此处讨论的一些示例中,您会遇到缩写
<fqdn>
(完全限定域名)。 满足要求后,根据情况,将其替换为您感兴趣的站点或服务器的地址,例如,使用
server-name.company.com
类的
server-name.company.com
。
平
顾名思义,
ping
实用程序用于测试网络节点之间,启动它的计算机与另一个系统之间的连接。 该实用程序使用
ICMP协议,将ping发送给接收它们的远程系统响应。 使用
ping
也是检查网络连接性的一种好方法,这是诊断网络是否存在问题的第一步。
ping
命令可与IPv4和IPv6地址一起使用。
在这里,您可以阅读有关IP地址以及如何使用它们的更多信息。
▍例子
IPv4: ping <ip address>/<fqdn> IPv6: ping6 <ip address>/<fqdn>
另外,Ping可用于根据站点名称查找站点的IP地址。 这是它的外观。
使用ping通过站点名称查找站点的IP地址跟踪路由
Traceroute
是一个很好的实用程序,可让您浏览计算机之间的数据传输路由。
ping
命令旨在确定是否可以在两个网络节点之间建立连接,而
traceroute
提供了有关路由器IP地址的信息,数据通过这些路由器从您的系统传递到最后一个(例如,到网站或服务器)。 在
ping
命令之后,通常在网络诊断的第二步中使用
traceroute
命令。
▍例子
traceroute <ip address>/<fqdn>
远程登录
telnet
实用程序允许您使用Telnet协议与远程计算机进行通信,并使用适当的命令与其进行交互。
▍例子
要组织与另一台计算机的
Telnet通信会话,请使用以下命令:
telnet <ip address>/<fqdn>
网络统计
此命令使您可以收集有关网络的信息,并用于查找和解决网络问题;它用于检查有关接口和端口的操作的数据,检查路由表以及研究有关协议的操作的信息。 当然,该命令必须存在于系统管理员的武库中。
▍例子
要获取处于侦听模式的所有端口的列表,请使用以下命令:
netstat -l
以下命令显示有关所有端口的信息。 为了仅限制TCP端口,您需要使用
-at
开关,为了获取有关UDP端口的数据,请使用
-au
。
netstat -a
要查看路由表,请使用以下命令:
netstat -r
这是此命令的结果。
路由表信息这是此命令的变体,显示有关协议的统计信息:
netstat -s
协议统计以下
netstat
调用选项使您可以找到有关每个接口的已发送和已接收数据包的信息(传输/接收,TX / RX):
已发送和已接收包裹的数据恩克里
nmcli
实用程序非常适用于管理网络连接,进行设置以及解决其他类似任务。 借助它的帮助,您可以控制
NetworkManager
程序并修改各种设备的网络参数。
▍例子
这是使用
nmcli
列出网络接口的方法:
nmcli device
因此,您可以在特定的界面上显示信息:
nmcli device show <interface>
以下命令调用选项可让您检查设备的网络连接:
nmcli connection
Nmcli示例此命令允许您禁用指定的接口:
nmcli connection down <interface>
这允许您启用接口:
nmcli connection up <interface>
这是一个命令示例,该命令将具有给定VLAN号,IP地址和网关的VLAN接口添加到指定接口:
nmcli con add type vlan con-name <connection-name> dev <interface> id <vlan-number> ipv4 <ip/cidr> gw4 <gateway-ip>
路由选择
有许多命令可用于验证和配置路由规则。 考虑其中最有用的。
▍例子
以下命令显示为各个接口配置的所有当前路由:
ip route
为接口配置的路由此命令允许您将默认网关添加到路由表:
route add default gw <gateway-ip>
以下命令将新的网络路由添加到路由表。 还有许多其他参数可让您执行操作,例如添加路由和默认网关等。
route add -net <network ip/cidr> gw <gateway ip> <interface>
使用此命令,可以从路由表中删除有关给定路由的条目:
route del -net <network ip/cidr>
以下是使用
route
命令的示例。
使用路由命令这是用于显示邻居的当前表的命令。 此外,它还可用于添加,修改或删除有关邻居的信息:
ip neighbor
看一下其用法示例。
使用ip neighbor命令获取的数据这是
ip neigh
命令的
ip neigh
ip neigh团队详细信息arp
命令(ARP代表地址解析协议)类似于
ip neighbor
。
arp
实用程序显示有关IP地址与MAC地址的对应关系的数据。 使用方法如下:
arp
这是她打个电话的例子。
调用arp命令Tcpdump和Wireshark
Linux为管理员提供了许多用于捕获和分析软件包的工具。 其中,例如,
tcpdump
,
wireshark
,
tshark
等。 它们用于捕获系统传输的数据包或系统接收的数据包中的网络流量。 这使它们成为非常有价值的管理工具,可帮助您确定各种网络问题的原因。 那些比命令行更喜欢与计算机通信的命令行的人会喜欢
tcpdump
。 对于喜欢图形界面的人来说,
wireshark
是捕获和分析软件包的绝佳工具。
tcpdump
实用程序是用于捕获网络流量的基于Linux的工具。 它可以用于捕获和输出流量,并通过端口,协议和其他符号进行过滤。
▍例子
这样的命令实时显示来自给定接口的数据包:
tcpdump -i <interface-name>
可以使用
-w
标志并指定文件名将软件包保存到文件中:
tcpdump -w <output-file.> -i <interface-name>
这是使用
tcpdump
的示例。
使用tcpdump以下版本的命令用于捕获来自源系统给定IP的数据包:
tcpdump -i <interface> src <source-ip>
因此,您可以捕获到达接收器系统给定地址的数据包:
tcpdump -i <interface> dst <destination-ip>
这是使用
tcpdump
捕获给定端口号的数据包的示例,例如,它可以是端口53、80、8080,依此类推:
tcpdump -i <interface> port <port-number>
这显示了如何使用
tcpdump
捕获给定协议(例如TCP,UDP或其他协议)的数据包:
tcpdump -i <interface> <protocol>
iptables
iptables
实用程序类似于防火墙,它支持数据包过滤,它允许您通过跳过或阻止来控制流量。 该实用程序的功能范围非常广泛。 考虑一些最常见的用例。
▍例子
以下命令显示所有现有的
iptables
规则:
iptables -L
此命令删除所有现有规则:
iptables -F
以下命令允许从给定端口号到给定接口的流量:
iptables -A INPUT -i <interface> -p tcp –dport <port-number> -m state –state NEW,ESTABLISHED -j ACCEPT iptables -A OUTPUT -o <interface> -p tcp -sport <port-number> -m state – state ESTABLISHED -j ACCEPT
以下命令启用对系统的环回访问:
iptables -A INPUT -i lo -j ACCEPT iptables -A OUTPUT -o lo -j ACCEPT
Nslookup
nslookup
工具用于获取有关为网络资源分配IP地址的信息。 它也可以用于从DNS服务器获取信息,例如网站的所有DNS记录(我们将在下面查看相应的示例)。
nslookup
实用程序类似于
dig
(域信息Groper)。
▍例子
以下命令在“服务器”字段中显示DNS服务器的IP地址,并在下面显示您要查找的站点的IP地址:
nslookup <website-name.com>
此命令显示给定网站或域的所有可用记录:
nslookup -type=any <website-name.com>
故障排除
这是一组命令和用于识别网络问题的重要文件的列表。
▍例子
ss
用于显示有关套接字的统计信息的实用程序。nmap <ip-address>
-此命令名称是Network Mapper的缩写。 它扫描网络端口,发现主机,找出MAC地址并执行许多其他任务。ip addr/ifconfig -a
此命令提供有关系统所有接口上的IP地址和其他数据的信息。ssh -vvv user@<ip/domain>
-此命令允许您使用指定的IP地址或计算机的域名和用户名,通过SSH连接到另一台计算机。 -vvv
标志使-vvv
可以获取有关正在发生的事情的详细信息。ethtool -S <interface>
-此命令允许您在给定接口上显示统计信息。ifup <interface>
-此命令启用指定的接口。ifdown <interface>
-此命令禁用指定的接口。systemctl restart network
使用此命令可以重新启动系统网络子系统。/etc/sysconfig/network-scripts/<interface-name>
-这是接口配置文件,用于指定指定接口的IP地址,网络,网关和其他参数。 在这里,您可以指定接口是否使用DHCP模式。/etc/hosts
此文件包含有关主机或域与管理员配置的IP地址的对应关系的信息。/etc/resolv.conf
设置存储在此文件中。/etc/ntp.conf
此文件存储NTP设置。
总结
在这个简短的备忘单中,我们讨论了面向系统管理员的Linux网络工具。 我们希望您发现这些工具有用。
亲爱的读者们! 您使用什么来管理网络并找出网络问题的原因?
