IP命令
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命令的更多相关文章
- ip命令和ifconfig命令(转载)
Linux的ip命令和ifconfig类似,但前者功能更强大,并旨在取代后者.使用ip命令,只需一个命令,你就能很轻松地执行一些网络管理任务.ifconfig是net-tools中已被废弃使用的一个命 ...
- dos 固定ip命令
dos 固定ip命令 ***************************************************************************************** ...
- Linux下的ip命令,除了ifconfig还有很多
linux的ip命令和ifconfig类似,但前者功能更强大,并旨在取代后者.使用ip命令,只需一个命令,你就能很轻松地执行一些网络管理任务.ifconfig是net-tools中已被废弃使用的一个命 ...
- linux包之iproute之ip命令
[root@localhost ~]# rpm -qf /sbin/ipiproute-2.6.32-31.el6.x86_64ip 是个命令, ip 命令的功能很多!基本上它整合了 ifconfig ...
- [网络配置相关]——ifconfig命令、ip命令、route命令
ifconfig命令 1. 查看已被激活的网卡的详细信息 # ifconfig eth0 Link encap:Ethernet HWaddr 00:30:67:F2:10:CF inet addr: ...
- linux下ip命令用法
配置数据转发,可以通过 1.路由转发即用用路由器实现: 2.使用NAT转发: 简单的说: 路由表内的信息只是指定数据包在路由器内的下一个去处.并不能改变数据包本身的地址信息.即它只是“换条路而已,目的 ...
- 试试Linux下的ip命令,ifconfig已经过时了
linux的ip命令和ifconfig类似,但前者功能更强大,并旨在取代后者.使用ip命令,只需一个命令,你就能很轻松地执行一些网络管理任务.ifconfig是net-tools中已被废弃使用的一个命 ...
- Linux:Day11(下) ip命令及配置文件方式
配置Linux网络属性:ip命令 ip [ OPTIONS ] OBJECT { COMMAND | help } OBJECT := { link | addr | route } link OBJ ...
- ip 命令
Linux的ip命令和ifconfig类似,但前者功能更强大,并旨在取代后者.使用ip命令,只需一个命令,你就能很轻松地执行一些网络管理任务.ifconfig是net-tools中已被废弃使用的一个命 ...
随机推荐
- 《快学Scala》——基础
声明值和变量 用val定义的值实际上是常量.用var定义的值是变量.在scala中鼓励使用val.不需要给出值或变量的类型,这个信息可以通过初始化的表达式推断出来.(声明值和变量但不做初始化会报错) ...
- SSH 远程执行任务
SSH 是 Linux 下进行远程连接的基本工具,但是如果仅仅用它来登录那可是太浪费啦!SSH 命令可是完成远程操作的神器啊,借助它我们可以把很多的远程操作自动化掉!下面就对 SSH 的远程操作功能进 ...
- 读 Zepto 源码之神奇的 $
经过前面三章的铺垫,这篇终于写到了戏肉.在用 zepto 时,肯定离不开这个神奇的 $ 符号,这篇文章将会看看 zepto 是如何实现 $ 的. 读Zepto源码系列文章已经放到了github上,欢迎 ...
- 区块链入门(1):搭建(Ubuntu系统)Truffle v3.2.1 开发和测试环境
本文主要讲解ubuntu 16.04下, truffle开发测试环境的搭建. 第一步:安装nodejs 和 npm,有两种比较常见的方法. 方法1:直接在nodejs官网下载nodejs-v6.10 ...
- sendemail 发送成功Email was sent successfully!邮箱却收不到邮件
在测试sendemail的时候,发现好多次明明提示已经发送成功了,但是邮箱却一直收不到邮件. 查询了好多资料,主要原因有两个 1.如果Linux是sentos的话,主要是防火墙iptables和sel ...
- 【http】http的方法,状态码和组成部分
Http(Hypertext Transfer Protocol) HTTP协议(HyperText Transfer Protocol,超文本传输协议)是用于从WWW服务器传输超文本到本地浏览器的传 ...
- 如何安装Elasticsearch?
最近工作中要用到搜索引擎,由于目前用的搜索引擎是LeanCloud 提供的 ,不太好用,不支持范围等搜索,而且每天还收费30元,请求次数也有限制.基于这些原因,我们只好在自己的服务器上部署搜索引擎了. ...
- MySQL 主从复制与读写分离概念及架构分析 (转)
1.MySQL主从复制入门 首先,我们看一个图: 影响MySQL-A数据库的操作,在数据库执行后,都会写入本地的日志系统A中. 假设,实时的将变化了的日志系统中的数据库事件操作,在MYSQL-A的33 ...
- iOS学习之应用之间的操作(转发)
首先要说的是每一个APP都可以设置一个自己独有的URL,APP应用之间的操作就是通过这个URL来实现的! 1.如何配置自己应用的URL? 关于自己的URL,作为资深的程序猿都会想到 Info.plis ...
- malloc与new相关
前言: 通常我们使用数组的时候:必须提前用一个常量来指定数组的长度,同时它的内存空间在编译的时候就已经被分配了.但是有时候数组的长度只有在运行的时候才能知道.因此,一种简单的解决方案就是提前申请一块较 ...