您的位置:首页 > 理论基础 > 计算机网络

Linux之网络管理(6)ip及路由相关命令

2016-09-11 15:38 901 查看
Linux之网络管理(6)ip及路由相关命令linux中提供了很多强大的网络管理工具,而且每更新一些版本后都会有新功能、新工具的出现,对于ip和route设置最常用的,就是ifconfig、route等命令了。 IP及设备相关的命令使用:ifconfig 命令查看接口设备信息ifconfig #查看所有启用(up状态)的接口信息ifconfig ifcfg-x #查看指定的网络接口信息ifconfig -a #查看所有网卡接口设备信息ifconfig -s #显示设备列表中数据传输状态信息启用或禁用网卡接口设备ifconfig ifcfg-ethX {up|down} #up为启用,down为禁用设置接口设备基本信息ifconfig ifcfg-ethX ipaddr/prefixlen #设置网卡IP及子网掩码:格式一ifconfig ifcfg-ethX ipaddr netmask maskaddr #设置网卡IP及子网掩码:格式二ifconfig ifcfg-ethX IP/MASK up #设置网卡IP及子网掩码并激活此设备ifconfig ifcfg-ethX mtu N #设置指定设备的最大传输单元,默认为1500给指定网卡添加别名及IPifconfig ifcfg-ethX:X ipaddr/prefixlen up ip命令查看接口设备ip link show #显示所有接口设备ip link show up #只查看查看激活的设备ip -o link show up #每个启用的设备列表信息显示在一行启用或禁用接口设备ip link set {up|down} dev ethX ip link set up dev eth1 #启用指定设备 eth1ip link set down dev eth1 #禁用指定设备eth1查看ipip addr show #显示所有网卡设备IP地址等信息ip addr show up #只显示启用状态网卡设备IP地址等信息ip addr show [ethX] #显示指定网卡ethX的IP地址等信息ip addr show to 2/8 #显示子网位8为ip为2开头的地址设置ipip addr add addr/prefixlen dev ethX #给指定设备添加IP地址ip addr del addr/prefixlen dev ethX #删除指定设备的指定IP地址ip add add addr/prefixlen dev ethX label ethX:X #对指定网卡添加别名设备清除 ipip addr flush dev ethX #清除指定网卡ethX的所有地址ip addr flush to 8 ethX #清除ethX子网掩码为8位的所有IPip addr flush to 1/8 ethX #清除ethX IP开头为1子网位数8为的IP 网关路由Route的相关命令使用:route 命令查看路由route #查看所有路由表route -n #查看所有路由表,并以数字方式显示添加路由route add defualt dev eth0 #给eth0添加默认路由route add 0.0.0.0 dev eth0 添加指定地址路由:#给指定设备设置通往指定IP主机的网关route add -host ipaddr dev ethX #给指定设备设置主机并指定路由route add -host ipaddr/prefixlen dev ethX route add -host ipaddr netmask maskaddr dev ethX#指定网段路由route add -net 10.0.0.0/8 dev eth0route add -net 172.0.0.0 netmask 255.255.0.0 dev eth0#指定网关的路由route add -net 10.0.0.0/8 gw 10.0.0.2 dev eth0删除路由route del defualt #删除默认路由route del 0.0.0.0 dev eth0 route del -host 10.0.0.1/8 #删除指定主机路由route del -host 10.0.0.1/8 dev eth1 route del -net 10.0.0.0/8 gw 10.0.0.2 #删除指定网关的路由 ip 命令查看路由ip route #查看所有路由设置路由ip route add default [ via ipaddr dev ethX ] #添加默认路由ip route add 0.0.0.0 #添加默认路由ip route del default #删除默认路由ip route add 10.0.0.10 via 10.0.0.20 dev eth0 #添加指定主机路由ip route add 10.0.0.0/8 via 10.0.0.2 dev eth0 #添加指定网段路由并指定网关ip route del 10.0.0.0/8dev eth0 #删除指定网段路由ip route del 10.0.0.10 dev eth0 #删除指定主机路由ip route change 10.0.0.0/8 via 20.0.0.10 dev eth0 #修改指定路由网关IP设置使用案例:ifconfig 命令设置eth2设备的ip地址并启用
[root@mzf ~]# ifconfig eth2 20.0.0.20/8  up
查看 eth2 修改后的ip的地址
[root@mzf ~]# ifconfig eth2


解析:其中inet addr显示为IP地址,而 Mask指定为子网掩码,HWaddr为网卡的MAC物理地址。禁用eth2 设备
[root@mzf ~]# ifconfig eth2 down
给eth2添加别名设备地址
[root@mzf ~]# ifconfig eth2:1  172.0.0.10 netmask 255.255.0.0 up
同时查看eth2和eth2:1别名设备
[root@mzf ~]# echo -e "eth2\neth2:1" | xargs -I {}  ifconfig {}


注意:刚才添加别名时最后设置为激活状态,但是ifconfig查看此设备并未激活,因为eth2本身是禁用状态,因此eth2启动,eth2:1才会起用并有效。再次启用eth2
[root@mzf ~]# ifconfig eth2 up
解析:这里ifconfig再次查看就能同时显示eth2和eth2:1的ip信息了,但是如果此时禁用掉eth2:1别名设备,那么再次启动别名设备就不行了,因为数据在内存中,并未配置文件正宗保存永久数据。#设置eth2:1别名设备的最大传输单元为900
[root@mzf ~]# ifconfig eth2:1 mtu 900



ip命令查看所有网卡设备
[root@mzf ~]# ip link show


解析:这里显示所有网络设备,state为DOWN表示禁用,state为UP表示启用。只显示启用状态的设备
[root@mzf ~]# ip link show up


只显示禁用状态设备,这里只有eth2为禁用
[root@mzf ~]# ip -o link show | grep --color 'state[[:space:]]DOWN'


启用eth2设备
[root@mzf ~]# ip link set up dev eth2
再次查看eth2设备状态,红色UP表示eth2已经启用
[root@mzf ~]# ip link show dev eth2 | grep --color -A 2 'state [^[:space:]]\+\>'


给eth2添加额外ip地址
[root@mzf ~]# ip addr add 172.0.0.20/16 dev eth2


解析:这里现在eth2已经有3条IP 地址了。给eth2添加别名设备
[root@mzf ~]# ip addr add 192.168.0.10/24 dev eth2 label eth2:1
删除指定条目地址
[root@mzf ~]# ip addr del 192.168.0.10/24 dev eth2
产看指定ip条目,只显示172开头的ip
[root@mzf ~]# ip addr show to 172/8 dev eth2
清除指定设备的指定ip
[root@mzf ~]# ip addr flush to 172/8 dev eth2
清除指定设备所有ip
[root@mzf ~]# ip addr flush dev eth2


route设置使用案例:route 命令查看路由表[root@mzf ~]# route -n

给eth2添加默认路由,并设置网关地址
[root@mzf ~]# route add default gw 20.0.0.2 dev eth2
删除eth2默认路由
[root@mzf ~]# route del default dev eth2
添加指定主机并设置网关
[root@mzf ~]# route add -host 10.1.249.185 gw 10.1.250.111  dev eth1
添加指定网段并设置网关
[root@mzf ~]# route add -net 20.0.0.0/8 gw 10.1.0.1  dev eth1
删除指定主机路由
[root@mzf ~]# route del -host 10.1.249.185 dev eth1
删除指定网段路由
[root@mzf ~]# route del -net 169.254.0.0/16 dev eth1

ip命令显示所有route表
[root@mzf ~]# ip route show
10.1.0.0/16 dev eth1  proto kernel  scope link  src 10.1.249.145
20.0.0.0/8 via 10.1.0.1 dev eth1
20.0.0.0/8 dev eth2  proto kernel  scope link  src 20.0.0.20
default via 10.1.0.1 dev eth1
添加192.168网段路由指定网关
[root@mzf ~]# ip route add 192.168.0.0/24 via 20.0.0.20 dev eth2
修改eth2设备指定网段的网关地址
[root@mzf ~]# ip route change 192.168.0.0/24 via 20.0.0.10 dev eth2
删除指定条目路由
[root@mzf ~]# ip route del 20.0.0.0/8  dev eth2
清除所有设备10开头的ip网段路由
[root@mzf ~]# ip route flush to 20/8
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  linux 网络管理