Linux下的ifconfig已通過時了,試試ip命令

背景

我裝的是RedHat 7.3 的系統。html

下面這個圖是我用 SecureCRT(固然你也能夠用Putty) 鏈接個人虛擬機後執行的 ifconfig 命令結果:linux

(順便說下,你們都知道Windows下面用的是 ipconfig吧。。。)git

因而乎,我就去搜了一下,這才恍然大悟,我已經out了~~~網絡

正文:

linux的ip命令和ifconfig相似,但前者功能更強大,並旨在取代後者。使用ip命令,只需一個命令,你就能很輕鬆地執行一些網絡管理任務。ifconfig是net-tools中已被廢棄使用的一個命令,許多年前就已經沒有維護了。iproute2套件裏提供了許多加強功能的命令,ip命令便是其中之一。工具

Net tools vs Iproute2

Net tools vs Iproute2google

要安裝ip,請點擊這裏下載iproute2套裝工具 。不過,大多數Linux發行版已經預裝了iproute2工具。spa

你也可使用git命令來下載最新源代碼來編譯:htm

 
  1. $ git clone https://kernel.googlesource.com/pub/scm/linux/kernel/git/shemminger/iproute2.git

iproute2 git clone

iproute2 git clone對象

設置和刪除Ip地址

要給你的機器設置一個IP地址,可使用下列ip命令:接口

 
  1. $ sudo ip addr add 192.168.0.193/24 dev wlan0

請注意IP地址要有一個後綴,好比/24。這種用法用於在無類域內路由選擇(CIDR)中來顯示所用的子網掩碼。在這個例子中,子網掩碼是255.255.255.0。

在你按照上述方式設置好IP地址後,須要查看是否已經生效。

 
  1. $ ip addr show wlan0

set ip address

set ip address

你也可使用相同的方式來刪除IP地址,只需用del代替add。

 
  1. $ sudo ip addr del 192.168.0.193/24 dev wlan0

delete ip address

delete ip address

列出路由表條目

ip命令的路由對象的參數還能夠幫助你查看網絡中的路由數據,並設置你的路由表。第一個條目是默認的路由條目,你能夠隨意改動它。

在這個例子中,有幾個路由條目。這個結果顯示有幾個設備經過不一樣的網絡接口鏈接起來。它們包括WIFI、以太網和一個點對點鏈接。

 
  1. $ ip route show

ip route show

ip route show

假設如今你有一個IP地址,你須要知道路由包從哪裏來。可使用下面的路由選項(譯註:列出了路由所使用的接口等):

 
  1. $ ip route get 10.42.0.47

ip route get

ip route get

更改默認路由

要更改默認路由,使用下面ip命令:

 
  1. $ sudo ip route add default via 192.168.0.196

default route

default route

顯示網絡統計數據

使用ip命令還能夠顯示不一樣網絡接口的統計數據。

ip statistics all interfaces

ip statistics all interfaces

當你須要獲取一個特定網絡接口的信息時,在網絡接口名字後面添加選項ls便可。使用多個選項-s會給你這個特定接口更詳細的信息。特別是在排除網絡鏈接故障時,這會很是有用。

 
  1. $ ip -s -s link ls p2p1

ip link statistics

ip link statistics

ARP條目

地址解析協議(ARP)用於將一個IP地址轉換成它對應的物理地址,也就是一般所說的MAC地址。使用ip命令的neigh或者neighbour選項,你能夠查看接入你所在的局域網的設備的MAC地址。

 
  1. $ ip neighbour

ip neighbour

ip neighbour

監控netlink消息

也可使用ip命令查看netlink消息。monitor選項容許你查看網絡設備的狀態。好比,所在局域網的一臺電腦根據它的狀態能夠被分類成REACHABLE或者STALE。使用下面的命令:

 
  1. $ ip monitor all

ip monitor all

ip monitor all

激活和中止網絡接口

你可使用ip命令的up和down選項來激某個特定的接口,就像ifconfig的用法同樣。

在這個例子中,當ppp0接口被激活和在它被中止和再次激活以後,你能夠看到相應的路由表條目。這個接口多是wlan0或者eth0。將ppp0更改成你可用的任意接口便可。

 
  1. $ sudo ip link set ppp0 down
  2.  
  3. $ sudo ip link set ppp0 up

ip link set up and down

ip link set up and down

獲取幫助

當你陷入困境,不知道某一個特定的選項怎麼用的時候,你可使用help選項。man頁面並不會提供許多關於如何使用ip選項的信息,所以這裏就是獲取幫助的地方。

好比,想知道關於route選項更多的信息:

 
  1. $ ip route help

ip route help

ip route help

小結

對於網絡管理員們和全部的Linux使用者們,ip命令是必備工具。是時候拋棄ifconfig命令了,特別是當你寫腳本時。

我這正文是複製的,別人辛辛苦苦寫的東西不能埋沒了: https://linux.cn/article-3144-1.html 

相關文章
相關標籤/搜索