Linux网络路由与管理工具详解
立即解锁
发布时间: 2025-09-13 00:43:17 阅读量: 10 订阅数: 20 AIGC 

### Linux网络路由与管理工具详解
#### 1. 网络路由简介
每台连接到网络的计算机在TCP/IP数据包离开本地主机时,都需要某种路由指令。很多网络环境较为简单,数据包的传输通常只有两种选择:发送到本地网络设备或远程网络。
本地网络指的是本地主机所在的逻辑和物理网络。逻辑上,主机被分配在本地子网的IP地址范围内;物理上,主机与连接到本地网络其他部分的一个或多个交换机相连。所有未发往本地网络主机或其他节点(如打印机)的数据包,都会被发送到默认路由器。
#### 2. 路由表
所有网络设备(包括主机、路由器和其他网络节点)都需要决定如何路由TCP/IP数据包。每个主机都有一个路由表,提供做出这些决策所需的配置信息。路由表用于确定是将数据包发送到本地网络的主机,还是发送到默认网关路由器。
对于使用DHCP连接到网络的主机,DHCP服务器会提供默认路由的配置信息,以及DNS、主机IP地址和可能的其他信息(如NTP服务器的IP地址)。
##### 2.1 查看路由表的命令
- `route -n`:列出路由表,`-n`选项仅以IP地址显示结果,不进行DNS查找。示例如下:
```plaintext
[student@studentvm1 ~]$ route -n
Kernel IP routing table
Destination Gateway Genmask Flags Metric Ref Use Iface
0.0.0.0 10.0.2.1 0.0.0.0 UG 100 0 0 enp0s3
10.0.2.0 0.0.0.0 255.255.255.0 U 100 0 0 enp0s3
```
- `netstat –rn`:结果与`route -n`类似,但包含Metric列,有助于理解多宿主系统。
##### 2.2 路由表相关信息
| 列名 | 含义 |
| ---- | ---- |
| Destination | 目标网络地址 |
| Gateway | 网关地址 |
| Genmask | 子网掩码 |
| Flags | 路由标志,如U表示路由启用,G表示默认网关 |
| Metric | 路由度量值,值越低优先级越高 |
| Ref | 引用计数 |
| Use | 使用次数 |
| Iface | 出站网络接口名称 |
#### 3. 路由决策规则
大多数主机的路由决策规则如下:
1. 如果目标主机在本地网络,直接将数据发送到目标主机。
2. 如果目标主机在通过路由表中列出的本地网关可访问的远程网络,将数据发送到明确定义的网关。
3. 如果目标主机在远程网络,且没有其他条目定义到该主机的路由,将数据发送到默认网关。
#### 4. 路由测试工具
##### 4.1 traceroute
用于查看数据包到远程主机的完整路由。示例如下:
```plaintext
[student@studentvm1 ~]# traceroute www.example.org
traceroute to www.example.org (93.184.216.34), 30 hops max, 60 byte packets
1 studentvm2.example.com (192.168.56.1) 0.323 ms 0.796 ms 0.744 ms
2 10.0.2.1 (10.0.2.1) 1.106 ms 1.089 ms 1.063 ms
...
```
可以使用`-I`选项强制使用ICMP而不是TCP,这样能更好地显示路由器的节点名称和IP地址。
##### 4.2 mtr
是`traceroute`的动态替代工具。示例如下:
```plaintext
[root@studentvm1 etc]# mtr -c2 -n -r example.com
Start: 2023-03-18T21:43:27-0400
HOST: studentvm1 Loss% Snt Last Avg Best Wrst StDev
1.|-- 10.0.2.1 0.0%
```
0
0
复制全文
相关推荐









