[TCPIP] IP路由表及选路 Note
TCP/IP
IP路由表及选路
1.路由表信息
路由表一般包含信息:目的IP地址、下一站路由器的IP地址、标志、 为数据报传送指定的一个网络接口。
查看路由表信息
mac-abeen:~ abeen$ netstat -rn
Routing tables
Internet:
Destination Gateway Flags Refs Use Netif Expire
default 172.16.0.1 UGSc 155 0 en0
127 127.0.0.1 UCS 1 0 lo0
127.0.0.1 127.0.0.1 UH 5 102207 lo0
169.254 link#4 UCS 1 0 en0
172.16/24 link#4 UCS 6 0 en0
172.16.0.1/32 link#4 UCS 2 0 en0
172.16.0.1 e0:5:c5:45:9f:c4 UHLWIir 156 373 en0 1165
172.16.0.17 d0:67:e5:1b:28:46 UHLWIi 1 2 en0 746
172.16.0.101 b8:ac:6f:c0:47:33 UHLWIi 1 11 en0 1197
172.16.0.103 24:a0:74:f0:7d:f0 UHLWIi 1 0 en0 455
172.16.0.104 link#4 UHLWIi 1 1 en0
172.16.0.106/32 link#4 UCS 1 0 en0
172.16.0.255 link#4 UHLWbI 1 9 en0
说明:
Destination 目的网络或主机
Gateway 到达目的需要使用的网关
Flags 路由flag
Refs 参考记数Reference count, 正在使用路由的进程个数
Use 经由这个路由被传送的分组包计数
Netif 这条路由使用的网络界面
Expire 超时时间(单位是秒)
Flag解释
U 表明路由可以使用
G 表明路由使用网关(非直接连接网络)
S 表明此路由是手动添加
C 用来Clone新的路由条目
H 该路由是到一个主机的路由
L
W 由一个条目Clone而来
2. IP选路原理
IP搜索路由表步骤:
#1. 搜索匹配的主机地址
#2. 搜索匹配的网络地址
#3. 搜索默认表项
3. 常用命令 netstat 、route 、 ifconfig
查看路由表: netstat -nr
查看系统接口信息:netstat -in
mac-abeen:~ abeen$ netstat -in
Name Mtu Network Address Ipkts Ierrs Opkts Oerrs Coll
lo0 16384 <Link#1> 313018 0 313018 0 0
lo0 16384 ::1/128 ::1 313018 - 313018 - -
lo0 16384 127 127.0.0.1 313018 - 313018 - -
lo0 16384 fe80::1%lo0 fe80:1::1 313018 - 313018 - -
gif0* 1280 <Link#2> 0 0 0 0 0
stf0* 1280 <Link#3> 0 0 0 0 0
en0 1500 <Link#4> 28:cf:e9:20:a2:5f 50472406 0 36930294 0 0
en0 1500 fe80::2acf: fe80:4::2acf:e9ff 50472406 - 36930294 - -
en0 1500 172.16/24 172.16.0.104 50472406 - 36930294 - -
en1 1500 <Link#5> 32:00:17:24:76:80 0 0 0 0 0
en2 1500 <Link#6> 32:00:17:24:76:81 0 0 0 0 0
p2p0 2304 <Link#7> 0a:cf:e9:20:a2:5f 0 0 0 0 0
awdl0 1484 <Link#8> 02:f5:96:cc:90:6c 0 0 846 0 0
awdl0 1484 fe80::f5:96 fe80:8::f5:96ff:f 0 - 846 - -
bridg 1500 <Link#9> 2a:cf:e9:02:75:00 0 0 0 0 0
说明:
MTU 最大传输单元
Ipkts 输入分组数
Ierrs 输入错误
Opkts 输出分组数
Oerrs 输出错误
Coll 冲突