每天一个linux命令(route)
route----用于显示和操作Ip路由表
格式:route [add|del] [-net|-host] 目标IP [mask|netmask 掩码] [gw|Gw 网关] [metric Metric]] [if Interface]]
主要作用:
1.添加或删除或修改路由
2.显示路由表
主要参数:
-c:显示更多信息
-n:不解析名字,直接使用IP或者port number
[root@root ~]# route -n Kernel IP routing table Destination Gateway Genmask Flags Metric Ref Use Iface 0.0.0.0 172.18.15.253 0.0.0.0 UG 0 0 0 eth0 14.215.177.38 172.18.4.53 255.255.255.255 UGH 0 0 0 eth0 169.254.0.0 0.0.0.0 255.255.0.0 U 1002 0 0 eth0 172.18.0.0 0.0.0.0 255.255.240.0 U 0 0 0 eth0 [root@root ~]# route Kernel IP routing table Destination Gateway Genmask Flags Metric Ref Use Iface default gateway 0.0.0.0 UG 0 0 0 eth0 14.215.177.38 root 255.255.255.255 UGH 0 0 0 eth0 link-local 0.0.0.0 255.255.0.0 U 1002 0 0 eth0 172.18.0.0 0.0.0.0 255.255.240.0 U 0 0 0 eth0
-v:显示详细的处理信息
-F:显示发送信息
-C:显示路由缓存
-f:清除所有网关入口的路由表
-p:与add命令一起使用时使路由具有永久性
add:添加一条新路由
del:删除一条路由
-net:目标地址是一个网络
-host:目标地址是一个主机
mask|netmask:当添加一个网络路由时,需要使用网络掩码
gw:路由数据包通过网关,前提是网关必须能够到达
metric:设置路由跳数
if Interface:为可以访问目标的接口指定接口索引
dev:如果只是要指定由哪一块网卡连线出去,则使用这个设定,后面跟确切的网卡号(如eth0)
reject:设置网络不可达避免在连接到这个网络地址时程序过长时间等待,直接就知道网络不可达
default:用于添加默认路由
三种路由类型:
1.主机路由(H):路由选择表中指向单个Ip地址或者主机名的路由记录,Flags字段为H
2.网络路由(N):主机可以到达的网络,Flags字段为N
3.默认路由(G):当主机不能在路由表中查找到目标Ip地址或者网络路由时,数据包将发送到默认路由上,Flags字段为G
实例:
1.增加一条到达目标ip的路由并从eth0网卡发出
route add –net 目标ip netmask 掩码 dev eth0
2.屏蔽一条路由
route add –net 目标ip netmask 掩码 reject
3.删除一条路由
route del –net 目标ip netmask 掩码 dev eth0
4.增加一条到达目标ip的路由并设置网关
route add –net 目标ip netmask 掩码 gw 网关
5.添加主机路由(单个Ip)
route add –host 目标Ip gw 网关
6.添加网络路由(一个网段)
route add –net 目标Ip netmask 掩码 gw 网关
route add –net 目标Ip netmask 掩码 eth0
7.添加默认路由
route add default gw 网关(将add改为del即为删除默认路由)
常见报错:
1.网络掩码与路由地址不匹配
route: netmask doesn't match route address
2.产生网络不可达
SIOCADDRT: Network is unreachable
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~华丽的切割线~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~