IP命令的用法详解
IP命令的用法详解
原创 2017-06-29 10:02:34 0932
ip命令是Linux下较新的功能强大的网络配置工具。
1 功能
ip命令用来显示或操纵Linux主机的路由、网络设备、策略路由和隧道。
2用法
Usage: ip [ OPTIONS ] OBJECT { COMMAND | help }
ip [ -force ] -batch filename
-force:不要终止批处理模式中的错误
-b:-batch filenam,从提供的文件或标准输入中读取命令并调用它们,第一次失败将导致IP终止
3参数与选项
OBJECT := { link | address | addrlabel | route | rule | neigh | ntable |
tunnel | tuntap | maddress | mroute | mrule | monitor | xfrm |
netns | l2tp | tcp_metrics | token }
OPTIONS := { -V[ersion] | -h[uman-readable] | -s[tatistics] | -d[etails] |
-r[esolve] | -iec | -f[amily] { inet | inet6 | ipx | dnet | link }
| -4 | -6 | -I | -D | -B | -0 | -l[oops] { maximum-addr-flush-
attempts } | -o[neline] | -rc[vbuf] [size] | -t[imestamp] |
-ts[hort] | -n[etns] name | -a[ll] }
(1)OPTIONS
是一些修改ip行为或者改变其输出的选项,所有的选项都是以-字符开头,分为长、短两种形式:
-V :-Version打印ip的版本并退出
-h: 人类可读输出
-s: -stats –statistics,输出更多的信息,如果这个选项出现两次或以上,输出的信息将更为详尽
d:输出更多的细节信息
-l:指定"IP地址刷新"逻辑将尝试的最大循环数,默认为10
-f :-family 指定要使用的协议族,协议可以是一个inet,inet6、bridge, ipx, dnet or link
-4: 是 -family inet的简写
-6 :是 -family inet6的简写
-0 :是 -family link 的简写
-I: 是-family ipx的简写
-o:-oneline 单行输出,用"\"字符替换换行符
-n:-netns交换机的IP到指定的网络空间netns
-r:-resolve 使用系统名称解析来打印DNS名称而不是主机地址
-t:使用监视器选项时显示当前时间
-a:-all对所有对象执行指定的命令,这取决于命令是否支持这个选项
-rc:-rcvbuf (size) 设置Netlink套接字接收缓冲区的大小设置,默认为1MB
(2)OBJECT
是你要管理或者获取信息的对象
OBJECT := { link | address | addrlabel | route | rule | neigh | ntable |
tunnel | tuntap | maddress | mroute | mrule | monitor | xfrm |
netns | l2tp | tcp_metrics | token }
具体表示的含义:
link 网络设备
address 一个设备的协议(IP或者IPV6)地址
neighbour ARP或者NDISC缓冲区条目
route 路由表条目
rule 路由策略数据库中的规则
maddress 多播地址
mroute 多播路由缓冲区条目
monitor 监控网络消息
mrule 组播路由策略数据库中的规则
tunnel IP上的通道
l2tp 隧道以太网(L2TPV3)
注意:所有的对象名都可以简写,例如:address可以简写为addr,甚至是a。
4 修改IP地址
(1)增加IP地址
格式: ip addr add ADDRESS/MASK dev DEVICE
root@centos7 ~]# ip addr add 192.1.1.1/24 dev ens33
(2)删除IP地址
[root@centos7 ~]# ip addr del 192.1.1.1/24 dev ens34
5 查看网络信息
[root@centos7 ~]# ip address show
[……]
2: ens33: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP qlen 1000
link/ether 00:0c:29:3a:00:82 brd ff:ff:ff:ff:ff:ff
inet 192.168.29.3/24 brd 192.168.29.255 scope global ens33
valid_lft forever preferred_lft forever
inet6 fe80::20c:29ff:fe3a:82/64 scope link
valid_lft forever preferred_lft forever
3: ens34: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP qlen 1000
link/ether 00:0c:29:3a:00:8c brd ff:ff:ff:ff:ff:ff
inet 192.1.1.1/24 scope global ens34
valid_lft forever preferred_lft forever
inet6 fe80::20c:29ff:fe3a:8c/64 scope link tentative
valid_lft forever preferred_lft forever
6 路由表的添加与删除
(1)添加路由表
格式:ip rouite add TARGET via GW
TARGET为目标网络或主机,GW为网关或吓一跳。
[root@centos7 ~]# ip route add 172.16.0.0/16 via 192.168.29.1
(2)删除路由表
[root@centos7 ~]# ip route del 172.16.0.0/16
(3) 显示路由表
格式:ip route show|list
[root@centos7 ~]# ip route list
default via 192.168.29.1 dev ens33 proto static metric 100
172.16.0.0/16 via 192.168.29.1 dev ens33
192.168.29.0/24 dev ens33 proto kernel scope link src 192.168.29.3 metric 100
192.168.122.0/24 dev virbr0 proto kernel scope link src 192.168.122.1
[root@centos7 ~]# ip route show
default via 192.168.29.1 dev ens33 proto static metric 100
172.16.0.0/16 via 192.168.29.1 dev ens33
192.168.29.0/24 dev ens33 proto kernel scope link src 192.168.29.3 metric 100
192.168.122.0/24 dev virbr0 proto kernel scope link src 192.168.122.1
(4)清空路由表
格式:ip route flush [dev IFACE] [via PREFIX]
[root@centos7 ~]# ip route flush dev ens33
(5)添加网关
格式:ip route add default via GW dev IFACE
[root@centos7 ~]# ip route add default via 192.168.29.1
7 实例
(1)显示网络设备的运行状态
[root@centos7 ~]# ip link list
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN mode DEFAULT qlen 1
link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
2: ens33: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP mode DEFAULT qlen 1000
link/ether 00:0c:29:3a:00:82 brd ff:ff:ff:ff:ff:ff
(2)显示邻居表
[root@centos7 ~]# ip neigh list
192.168.29.1 dev ens33 lladdr 00:50:56:c0:00:01 REACHABLE
(3)查看网卡信息
[root@centos7 ~]# ip -s link list ens33
2: ens33: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP mode DEFAULT qlen 1000
link/ether 00:0c:29:3a:00:82 brd ff:ff:ff:ff:ff:ff
RX: bytes packets errors dropped overrun mcast
704554 4943 0 0 0 0
TX: bytes packets errors dropped carrier collsns
470814 3110 0 0 0 0
(4)改变最大传输队列长度
[root@centos7 ~]# ip link set dev ens33 txqueuelen 1500
(5)设置MTU
[root@centos7 ~]# ip link set ens33 mtu 1400
显示以上设置是否生效
[root@centos7 ~]# ip link show ens33
2: ens33: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1400 qdisc pfifo_fast state UP mode DEFAULT qlen 1500
link/ether 00:0c:29:3a:00:82 brd ff:ff:ff:ff:ff:ff
可以看到mtu 和 qlen都已经生效
(6)关闭网络设备
[root@centos7 ~]# ip link set ens38 down
[root@centos7 ~]# ip link show ens38
4: ens38: <BROADCAST,MULTICAST> mtu 1500 qdisc pfifo_fast state DOWN mode DEFAULT qlen 1000
link/ether 00:0c:29:3a:00:96 brd ff:ff:ff:ff:ff:ff
[root@centos7 ~]#
(7)开启网络设备
[root@centos7 ~]# ip link set ens38 up
[root@centos7 ~]# ip link show ens38
4: ens38: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP mode DEFAULT qlen 1000
link/ether 00:0c:29:3a:00:96 brd ff:ff:ff:ff:ff:ff
以上就是IP命令的用法详解的详细内容,更多请关注php中文网其它相关文章!
IP命令的用法详解的更多相关文章
- Linux crontab命令 定时任务 用法详解以及no crontab for root解决办法
最近系统服务器进行搬迁,又恰好需要使用定时任务运行程序,而我的程序主要使用PHP写的,然后总结了下定时任务的用法,但是在这里主要写的是关于crontab命令的用法,使用过程中遇到不少问题,例如no c ...
- jar命令的用法详解
本文详细讲述了JAR命令的用法,对于大家学习和总结jar命令的使用有一定的帮助作用.具体如下: JAR包是Java中所特有一种压缩文档,其实大家就可以把它理解为.zip包.当然也是有区别的,JAR包中 ...
- [转] DOS命令for用法详解
[From] http://www.jb51.net/article/31284.htm for帮助文档 对一组文件中的每一个文件执行某个特定命令. FOR %variable IN (set) DO ...
- DOS 命令大全用法详解
注意事项 DOS命令不区分大小写,比如C盘的Program Files,在dos命令中完全可以用"program files"代替,加上英文引号是因为名称的中间有空格(即多于一个词 ...
- 转载:Linux批量远程管理主机命令_pssh用法详解
原文:http://www.linuxidc.com/Linux/2011-12/49635p2.htm (一) 使用前提 中心主机连接远程主机可以通过ssh密钥无密码连接 (二) 命令格式 pssh ...
- scp命令的用法详解
这篇文章主要是参考了http://blog.csdn.net/jiangkai_nju/article/details/7338177这个博客,要看详细的内容可以参考这个博客进行学习研究,但是我觉得在 ...
- linux下的mount命令的用法详解
挂接命令(mount) 首先,介绍一下挂接(mount)命令的使用方法,mount命令参数非常多,这里主要讲一下今天我们要用到的. 命令格式:mount [-t vfstype] [-o option ...
- Linux修改权限命令chmod用法详解
Linux系统中的每个文件和目录都有访问许可权限,用它来确定谁可以通过何种方式对文件和目录进行访问和操作. 文件或目录的访问权限分为只读,只写和可执行三种.以文件为例,只读权限表示只允许读其内容,而禁 ...
- 【转】Linux虚拟终端命令Screen用法详解
转自 http://www.linuxidc.com/Linux/2013-07/87415.htm 在使用ssh或者telnet登录远程主机后,执行一些耗时的命令,如果此时ssh或者telnet中断 ...
随机推荐
- WPF 自定义绕圈进度条(转)
在设计界面时,有时会遇到进度条,本次讲解如何设计自定义的绕圈进度条,直接上代码: 1.控件界面 <UserControl x:Class="ProgressBarControl&quo ...
- 批量修改文件名后缀,例如:html修改成HTML
批量修改文件名后缀,例html修改成HTML 把文件后缀名html全部修改成HTML: 例:aa.html aa.HTML #!/bin/bash for file in `ls`;do mv $fi ...
- 搭建JIRA汉化后乱码问题
JIRA的简体中文乱码(使用了BIG5导致) 安装完JIRA汉化后发现一部分中文显示乱码,经检查:本来应该是UTF-8编码的却显示成Big5,Big5根本不支持简体中文的! 进入JIRA数据库后找到 ...
- ORACLE常识
1. ORACLE中查看表中的外键来源于哪些表 select cl.table_name from user_cons_columns cl left join user_constraints c ...
- 解决eclipse Blocked : the user operation is waiting
本文转载自:http://blog.csdn.net/shaw1994/article/details/44106679 出现这种情况的时候整个adb都跪了, eclipse一run就会跪, 而且还容 ...
- 迭代器-迭代对象-dir(a)可以查看该数据类型有多少种方法。range(10)在py3里就是一个迭代器,for循环实际就是迭代器的应用
迭代器 我们已经知道,可以直接作用于for循环的数据烈性有以下几种: 一类是集合数据类型,如list.tuple.dict.set.str,bytes等: 一类是generator,数据结构,包括生成 ...
- PHP 获取指定日期的星期几的方法
<?php header("Content-type: text/html; charset=utf-8"); //获取星期方法 function get_week($dat ...
- python开发函数进阶:可迭代的&迭代器&生成器
一,可迭代的&可迭代对象 1.一个一个的取值就是可迭代的 iterable#str list tuple set dict#可迭代的 ——对应的标志 __iter__ 2.判断一个变量是不 ...
- mybatis 动态sql语句(2)
什么是动态SQL MyBatis的一个强大特性之一通常是它的动态SQL能力.如果你有使用JDBC或其他相似框架的经验,你就明白条件串联SQL字符串在一起是多么地痛苦,确保不能忘了空格或者在列表的最后的 ...
- pymysql增删改查
#!/usr/bin/env python # encoding: utf-8 # Date: 2018/6/24 # 1.增删改import pymysql conn = pymysql.conn ...