IP命令

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

(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

原創文章,作者:linux is not unix,如若轉載,請注明出處:http://www.www58058.com/74913

(1)
linux is not unixlinux is not unix
上一篇 2017-05-07
下一篇 2017-05-07

相關推薦

  • 馬哥教育網絡班21期+第10周課程練習

    1、請詳細描述CentOS系統的啟動流程(詳細到每個過程系統做了哪些事情) POST(Power On Self Test): 檢測系統外圍關鍵設備(如:CPU、內存、顯卡、I/O、鍵盤鼠標等)是否正常。 加載BIOS(Basic Input and Output System): 根據在BIOS中設置的系統啟動順序來搜索用于啟動系統的驅動器(硬盤、光盤、U…

    Linux干貨 2016-09-08
  • 隨筆

    GREP正則表達式: 復習: glob文件通配符:     *:任意長度字符:     ?:任意單個字符:     []:括號內的任意單個字符:     [^]:括號內字符除外:  &nbs…

    Linux干貨 2016-07-16
  • 前三天基礎-Linux文件系統概論

    Linux之我見     在2016農歷丙申年2016年猴年,對于小白的我來說接觸到了江湖流傳的武功秘籍之-Linux心法,第一次接觸到命令行,知道在鍵盤上隨便敲擊命令就可以滿屏跑數據,就像看過的美國大片里黑客帝國里面的畫面,感覺學會好后可以裝逼了,廢話不多說了,允許在下斗膽介紹Linux文件系統。     &nbsp…

    Linux干貨 2016-03-24
  • N25第六周 vim,crontab命令的使用

    請詳細總結vim編輯器的使用并完成以下練習題 vim是一款功能強大的文本編輯器,是程序員的必備神器。 vim工作模式分為三種:編輯模式,輸入模式,末行模式,三種工作模式可以進行來自由切換     編輯模式—》輸入模式: 直接鍵i      輸入模式—》…

    Linux干貨 2016-12-29
  • Linux中的shell腳本編程——基礎篇

    概述:       shell腳本在Linux系統管理員的運維工作中非常重要。shell腳本能夠幫助我們很方便的管理服務器,因為我們可以指定一個任務計劃,定時的去執行某一個腳本以滿足我們的需求。本篇將從編程基礎、腳本基本格式、變量、運算、條件測試這幾個方面詳細介紹shell腳本編程的基礎內容,也是我們必須要掌握熟練的內容。 一、…

    Linux干貨 2016-08-15
  • 常見RAID級別

    什么是RAID?     獨立磁盤冗余陣列(RAID,Redundant Arrary of Independent Disks),舊稱廉價磁盤冗余陣列(Redundant Arrary of Inexpensive Disks),簡稱磁盤陣列?;舅枷刖褪前讯鄠€相對便宜的硬盤組合起來,成為一個硬盤陣列組,使性能達到甚至超過一個價格昂貴、…

    Linux干貨 2016-05-29
欧美性久久久久