IP命令的用法详解

原创 2017-06-29 10:02:34 0932

摘自:http://www.php.cn/linux-371363.html

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命令的用法详解的更多相关文章

  1. Linux crontab命令 定时任务 用法详解以及no crontab for root解决办法

    最近系统服务器进行搬迁,又恰好需要使用定时任务运行程序,而我的程序主要使用PHP写的,然后总结了下定时任务的用法,但是在这里主要写的是关于crontab命令的用法,使用过程中遇到不少问题,例如no c ...

  2. jar命令的用法详解

    本文详细讲述了JAR命令的用法,对于大家学习和总结jar命令的使用有一定的帮助作用.具体如下: JAR包是Java中所特有一种压缩文档,其实大家就可以把它理解为.zip包.当然也是有区别的,JAR包中 ...

  3. [转] DOS命令for用法详解

    [From] http://www.jb51.net/article/31284.htm for帮助文档 对一组文件中的每一个文件执行某个特定命令. FOR %variable IN (set) DO ...

  4. DOS 命令大全用法详解

    注意事项 DOS命令不区分大小写,比如C盘的Program Files,在dos命令中完全可以用"program files"代替,加上英文引号是因为名称的中间有空格(即多于一个词 ...

  5. 转载:Linux批量远程管理主机命令_pssh用法详解

    原文:http://www.linuxidc.com/Linux/2011-12/49635p2.htm (一) 使用前提 中心主机连接远程主机可以通过ssh密钥无密码连接 (二) 命令格式 pssh ...

  6. scp命令的用法详解

    这篇文章主要是参考了http://blog.csdn.net/jiangkai_nju/article/details/7338177这个博客,要看详细的内容可以参考这个博客进行学习研究,但是我觉得在 ...

  7. linux下的mount命令的用法详解

    挂接命令(mount) 首先,介绍一下挂接(mount)命令的使用方法,mount命令参数非常多,这里主要讲一下今天我们要用到的. 命令格式:mount [-t vfstype] [-o option ...

  8. Linux修改权限命令chmod用法详解

    Linux系统中的每个文件和目录都有访问许可权限,用它来确定谁可以通过何种方式对文件和目录进行访问和操作. 文件或目录的访问权限分为只读,只写和可执行三种.以文件为例,只读权限表示只允许读其内容,而禁 ...

  9. 【转】Linux虚拟终端命令Screen用法详解

    转自 http://www.linuxidc.com/Linux/2013-07/87415.htm 在使用ssh或者telnet登录远程主机后,执行一些耗时的命令,如果此时ssh或者telnet中断 ...

随机推荐

  1. ASP.NET中服务器控件的生命周期

    服务器控件的生命周期是创建服务器控件最重要的概念.作为开发人员,必须对服务器控件生命周期深刻理解.当然,这不是一朝一夕就可以做到的.对于学习控件开发技术的初学者,可以不必掌握得非常详细深入,只需对服务 ...

  2. phpstorm2017.3.6的激活、样式设置和汉化

    一:安装phpstorm2017.3.6,并激活.设置样式.(1)先在phstorm官网里www.jetbrains.com下载phpstorm2017.3.6,按照步骤安装即可.下面开始激活!(2) ...

  3. CENTOS7配置静态IP后无法ping通外部网络的问题

    我今天想谈论的并不是如何配置静态IP,这样的话题已经有好多高手再谈. 我想谈的是为什么,我按照他们的教程无论如何也要发生各种问题,没办法连接外网的问题. 先给大家看我的最终版配置方案:我只修改了一个文 ...

  4. FTP,FTPS,FTPS与防火墙

    昨天搭建了一台FTPS服务器,过程中学习了很多不清楚的知识点,还有遇到的问题,记录一下. (大部分内容汇集.整理自网络) 一. 关于FTP传输模式 众所周知,FTP传输有两种工作模式,Active M ...

  5. XML注释与Description标签及Java:注解(Annotation)的关系

    NET中的规范标准注释(一) -- XML注释标签讲解 一.摘要 .Net允许开发人员在源代码中插入XML注释,这在多人协作开发的时候显得特别有用. C#解析器可以把代码文件中的这些XML标记提取出来 ...

  6. 解决maven构建工程错误:Failure to transfer org.apache.maven.plugins:maven-jar-plugin:pom:2.4 from错误

    问题描述: mvn archetype:generate -DgroupId=com.mycompany.app -DartifactId=myapp -DarchetypeArtifactId=ma ...

  7. webpack4+vue2+axios+vue-router的多页+单页混合应用框架

    VUE2的单页应用框架有人分享了,多页应用框架也有人分享了,这里就分享一个单页和多页的混合应用框架吧,初现雏形,还有很多需要优化和改善的地方... 结尾有github地址. 项目结构 │ ├─buil ...

  8. MATLAB和C语言混合编程-----Matlab7.0 编译器设置

    (1) mex 命令设置 (a) 运行 Matlab ,在 Matlab 的命令窗口 (Command Window) 键入“ mex -setup ”命令后,按回车键,安装 Matlab 编译器: ...

  9. bash&nbsp;shell笔记7&nbsp;创建函数

    原创作品,允许转载,转载时请务必以超链接形式标明文章 原始出处 .作者信息和本声明.否则将追究法律责任.http://twentyfour.blog.51cto.com/945260/525126 知 ...

  10. swift之xib关联UIView

    有点坑爹,设置file owner 不行,搞了一早上,来说下怎么关联吧 自定义UIView要重写 required init(coder aDecoder: NSCoder) { super.init ...