设为首页 收藏本站
查看: 819|回复: 0

[经验分享] Linux下常用的配置IP及route的命令汇编

[复制链接]
累计签到:1 天
连续签到:1 天
发表于 2015-9-2 08:34:05 | 显示全部楼层 |阅读模式
Linux下用于配置或者查看IP地址、路由表的命令有很多,本文打算将其都罗列出来,后面想到其它的命令再一一补充。
内容有点杂乱。。。。。

1.配置、及查看IP地址的命令
常用的有ifconfig、ifcfg、ip命令。
下面主要以常用的实例来说明其用法。具体的参数请参考man帮助文档。

1.1 ifconfig命令:
ifconfig -a                   # 显示所有网络接口信息【含down状态的接口】
ifconfig eth0     # 显示eth0接口信息
ifcfg eth0 down|up           # 关闭|启用eth0
ifconfig eth0 192.168.10.2/24 up    # 修改eth0的IP地址为192.168.10.2/24【重启网络服务i配置即失效】
ifconfig eth0 192.168.10.2 netmask 255.255.255.0        # 设置ip地址,同上一条命令效果一样
ifconfig eth0:0 192.168.20.2/24 up          # 添加虚拟网卡eth0:0,IP地址为192.168.20.2/24【重启网络服务i配置即失效】

1.2 ifcfg命令:
ifcfg是用来取代ifconfig命令的,和ifconfig命令功用基本一致。

ifcfg eth0:0 add 192.168.10.2/24    # 添加虚拟网卡eth0:0,IP地址为192.168.10.2/24【重启网络服务i配置即失效】
ifcfg eth0:0 del 192.168.10.2/24

1.3 ip 命令:
ip link sh           # 显示的所有接口的链路状态【down 或者up,MTU等信息】
ip link sh eth0  # 显示eth0的链路状态
ip link sh eth0  # 显示eth0的链路状态
ip link sh up      # 仅显示状态为up的接口信息

ip link set eth1 down|up           # 激活或禁止eth1接口

ip addr sh          # 显示网卡及IP等信息
ip addr sh eth1         # 显示eth1的IP信息
ip addr sh label eth1*      # 显示匹配label为eth1的网卡信息【支持通配符】

ip addr add 192.168.2.11/24 dev eth0 label eth0:0         # 添加虚拟网卡,并指定网卡别名
ip addr del 192.168.2.11/24 dev eth0               # 删除虚拟网卡

Note:下面的几个 ip addr 命令不常用
ip addr add 10.10.10.20/24 dev eth1 scope link
上面的[scope {global|link|host}]:指明作用域【global: 全局可用;link: 仅链接可用;host: 本机可用;】

此外,还可以设置broadcast广播地址,如:ip addr add 10.10.20.20 broadcast 10.255.255.255 dev eth1

ip addr flush eth0     # 清空eth0网卡的配置
ip addr flush eth1 to 192.168.2.10/24     # 清空eth1上的192.168.2.10/24
ip addr flush 的各种参数格式和ip addr show类似,请参考上面。

2.配置及查看路由的命令
常用的有route、ip命令。
下面主要以常用的实例来说明其用法。更多的参数请参考man帮助文档。

2.1 route命令:

route -n    # 以数字形式显示路由条目【自动将域名解析为IP地址】

添加一条主机路由
route add -host 192.168.3.1 gw 172.16.0.1 dev eth0        
# 添加一条到达主机192.168.3.1的路由,经由eth0接口, ,网关为172.16.0.1
注意:添加主机路由时候,不要加掩码

添加一条网段路由
route add -net 192.168.4.0/24 gw 172.16.0.1 dev eth0   
# 添加一条到达192.168.4.0/24网段的路由,经由eth0接口,网关为172.16.0.1

添加默认路由
route add default gw 172.16.0.1
或者route add -net 0.0.0.0 netmask 0.0.0.0 gw 172.16.0.1

删除路由
route del -host 192.168.1.3            # 删除到192.168.1.3的主机路由
route del -net 192.168.0.0 netmask 255.255.255.0          # 删除到192.168.0.0/24网段的路由

2.2 ip命令:

ip route sh    # 显示本机路由表信息

常用的还有:ip route { add | del | change | append | replace | monitor } ROUTE


添加路由
ip route add TARGET via GW dev IFACE src SOURCE_IP
TARGET可以是:
       主机路由:具体IP地址
       网络路由:NETWORK/MASK
例如:
ip route add 192.168.20.2 via  192.168.2.2 dev eth0 src 192.168.2.13      # 添加主机路由【不加掩码】
# 如果只有一块网卡的话,其中的src Source_IP可以不写

ip route add 192.168.20.0/24 via 192.168.2.2 dev eth0 src 192.168.2.13   # 添加网络路由【需要加掩码】


添加网关:
ip route add defalt via GW dev IFACE

删除路由:
格式:ip route del TARGET
ip route del 192.168.20.2        # 删除主机路由【del后面接的是单个IP地址】
ip route del 192.168.20.0/24   # 删除网络路由【del后面接的是网段】

ip route del [-net|-host] target [gw Gw] [netmask Nm] [[dev] If]


清空路由表
ip route flush
       [dev IFACE]
       [via PREFIX]
例如:
ip route flush       # 清空所有路由表
ip route flush dev eth1      # 清空与eth1 接口
ip route flush dev eth1 via 192.168.10.10

补充一:
路由表格式:
Destination列:是远程路由地址,可以是主机地址或者网段
Gateway列:
GenMask列:Destination的掩码
Flags列:
U表示该路由可用
G表示该路由需要经网关转发
H表示该行的路由为一台主机,而非一个网段

wKioL1Xlum7hNhSkAAG_WS8qkCo083.jpg


补充二:
配置IP过程中,一些也会用到的命令,如:
ifup eth1       # 启用eth1
ifdown eth1  # 禁掉eth1


运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-108522-1-1.html 上篇帖子: Touch 修改文件的时间戳 下篇帖子: Address already in use: make_sock: could not bind to address 0.0.0.0:80 Linux
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表