Linux系统查看网络配置信息的命令

网络是一个很重要的概念,对于今天来说没有网络寸步难行。那么作为系统管理员在管理服务器时最首先需要了解的东西就是网络配置相关信息了,我们来一块回忆一下,说到网络配置都可以想到什么东西?IP 地址、子网验码、网关、路由表、DNS 服务器等等这些都是跟网络相关的配置,那么在 Linux 系统中该如何查看这些信息呢?其实通过命令就可以。

$ ifconfig

image-20201129021244384

看上面这张图片不难理解 ifconfig 命令的作用,它可以打印出当前系统中网卡的相关配置信息,首先最开始看到的就是网卡设备的名称即 eth0 ,还有下面的一块是 lo ,这个表示的是环回接口,环回口的 IP 也是固定的为 127.0.0.1,每个系统默认都会有一般用来测试 "TCP/IP" 协议栈使用。

这里我们将重点主要放在 eth0 上,下面我们对它的输出做详细解释:

flags=4163  mtu 1500

这里从 flags 看出接口是 UP,UP 就表示接口的状态是开启着的。相反如果没有开启就是 DOWN 状态。尖括号中的 BROADCAST 表示这个接口是支持广播的,RUNNING 表示运行状态,MULTICAST 表示的是支持组播。最后的 mtu 表示支持的最大传输单元是 1500。

inet 172.16.16.250  netmask 255.255.240.0  broadcast 172.16.31.255

第二行就相对好理解一点,就是很基础的网络配置信息,inet 表示当前的 IP 地址为 172.16.16.250,netmask 指的就是当前的 IP 地址的网络掩码为 255.255.240.0,网络掩码的作用就是来区分同一个局域网的 IP 是否在一个网端内,一个完整的 IP 地址是包括子网掩码的,如果不包括就无法区分这个地址具体的网段。最后的 broadcast 表示广播地址。

inet6 fe80::5054:ff:feaa:f7f4  prefixlen 64  scopeid 0x20

这一行中 inet6 表示的是 IPv6 的地址,是由 IPv4 计算出来的,prefixlen 表示子网掩码,最后的部分表示作用域,没有太大参考价值,这里不做过多说明。

ether 52:54:00:aa:f7:f4  txqueuelen 1000  (Ethernet)

在这一行中,ether 指的是网卡的 MAC 地址,具有唯一性。txqueuelen 这个参数是指当前传输队列的长度,Ethernet 想必大家都很了解,指网卡接口的类型为 Ethernet。

在 Linux 系统中用于查看 IP 的名零零很多,ip a 也是一个不错的选择。

$ ip a

image-20201129023349889

仔细看其实会发现,ifconfigip a 这两个命令的输出内容其实大概相同的,就是显示的格式不太一样,这也是我喜欢使用 ifconfog 的原因,它的输出更整齐。

网络配置相关信息我们开头说了,除了 IP 地址还有路由表跟 DNS,这两个内容也是可以查看的。

$ route
Kernel IP routing table
Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
default         _gateway        0.0.0.0         UG    100    0        0 eth0
172.16.16.0     0.0.0.0         255.255.240.0   U     100    0        0 eth0

image-20201129023635405

路由表中的设置规定了流量的下一跳的去向,Destination 表示目的地,拿第二条路由来讲,如果有流量想要去往 172.16.16.0 这个网段,那么就走默认的网关,从 eth0 这个接口出去。

最后就是 DNS 服务器的指向,DNS 是用来做域名解析的,让人更方便访问互联网。最开始是没有域名的,如果你想要访问某个网站就必须通过 IP 地址去访问,但是公网上的 IP 地址很多,不方便人们记忆,因为就有人想出了域名的办法。跟一长串的地址比起来,其实域名是更好记忆的。服务器中 DNS 服务器的设置是存放在配置文件中的,如果想要修改直接编辑配置就可以。

$ cat /etc/resolv.conf 
nameserver 183.60.83.19
nameserver 183.60.82.98

image-20201129023935744

你可能感兴趣的:(linux)