新聞中心
Linux的ip命令和ifconfig類似,但前者功能更強大,并旨在取代后者。使用ip命令,只需一個命令,你就能很輕松地執(zhí)行一些網(wǎng)絡(luò)管理任務(wù)。ifconfig是net-tools中已被廢棄使用的一個命令,許多年前就已經(jīng)沒有維護了,本篇文章重點為大家分享一下Linux下ip命令。

“只有客戶發(fā)展了,才有我們的生存與發(fā)展!”這是創(chuàng)新互聯(lián)建站的服務(wù)宗旨!把網(wǎng)站當(dāng)作互聯(lián)網(wǎng)產(chǎn)品,產(chǎn)品思維更注重全局思維、需求分析和迭代思維,在網(wǎng)站建設(shè)中就是為了建設(shè)一個不僅審美在線,而且實用性極高的網(wǎng)站。創(chuàng)新互聯(lián)對網(wǎng)站制作、成都網(wǎng)站設(shè)計、網(wǎng)站制作、網(wǎng)站開發(fā)、網(wǎng)頁設(shè)計、網(wǎng)站優(yōu)化、網(wǎng)絡(luò)推廣、探索永無止境。
開始使用現(xiàn)代方法配置 Linux 網(wǎng)絡(luò)接口。
在很長一段時間內(nèi),ifconfig 命令是配置網(wǎng)絡(luò)接口的默認方法。它為 Linux 用戶提供了很好的服務(wù),但是網(wǎng)絡(luò)很復(fù)雜,所以配置網(wǎng)絡(luò)的命令必須健壯。ip 命令是現(xiàn)代系統(tǒng)中新的默認網(wǎng)絡(luò)命令,在本文中,我將向你展示如何使用它。ip 命令工作在 OSI 網(wǎng)絡(luò)棧 的兩個層上:第二層(數(shù)據(jù)鏈路層)和第三層(網(wǎng)絡(luò) 或 IP)層。它做了之前 net-tools 包的所有工作。
安裝 ip
ip 命令包含在 iproute2util 包中,它可能已經(jīng)在你的 Linux 發(fā)行版中安裝了。如果沒有,你可以從發(fā)行版的倉庫中進行安裝。
ifconfig 和 ip 使用對比
ip 和 ifconfig 命令都可以用來配置網(wǎng)絡(luò)接口,但它們做事方法不同。接下來,作為對比,我將用它們來執(zhí)行一些常見的任務(wù)。
查看網(wǎng)口和 IP 地址
如果你想查看主機的 IP 地址或網(wǎng)絡(luò)接口信息,ifconfig (不帶任何參數(shù))命令提供了一個很好的總結(jié)。
$ ifconfig
eth0: flags=4099 mtu 1500
ether bc:ee:7b:5e:7d:d8 txqueuelen 1000 (Ethernet)
RX packets 0 bytes 0 (0.0 B)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 0 bytes 0 (0.0 B)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
lo: flags=73 mtu 65536
inet 127.0.0.1 netmask 255.0.0.0
inet6 ::1 prefixlen 128 scopeid 0x10
loop txqueuelen 1000 (Local Loopback)
RX packets 41 bytes 5551 (5.4 KiB)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 41 bytes 5551 (5.4 KiB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
wlan0: flags=4163 mtu 1500
inet 10.1.1.6 netmask 255.255.255.224 broadcast 10.1.1.31
inet6 fdb4:f58e:49f:4900:d46d:146b:b16:7212 prefixlen 64 scopeid 0x0
inet6 fe80::8eb3:4bc0:7cbb:59e8 prefixlen 64 scopeid 0x20
ether 08:71:90:81:1e:b5 txqueuelen 1000 (Ethernet)
RX packets 569459 bytes 779147444 (743.0 MiB)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 302882 bytes 38131213 (36.3 MiB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
新的 ip 命令提供了類似的結(jié)果,但命令是 ip address show,或者簡寫為 ip a:
$ ip a
1: lo: mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000
link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
inet 127.0.0.1/8 scope host lo
valid_lft forever preferred_lft forever
inet6 ::1/128 scope host
valid_lft forever preferred_lft forever
2: eth0: mtu 1500 qdisc pfifo_fast state DOWN group default qlen 1000
link/ether bc:ee:7b:5e:7d:d8 brd ff:ff:ff:ff:ff:ff
3: wlan0: mtu 1500 qdisc noqueue state UP group default qlen 1000
link/ether 08:71:90:81:1e:b5 brd ff:ff:ff:ff:ff:ff
inet 10.1.1.6/27 brd 10.1.1.31 scope global dynamic wlan0
valid_lft 83490sec preferred_lft 83490sec
inet6 fdb4:f58e:49f:4900:d46d:146b:b16:7212/64 scope global noprefixroute dynamic
valid_lft 6909sec preferred_lft 3309sec
inet6 fe80::8eb3:4bc0:7cbb:59e8/64 scope link
valid_lft forever preferred_lft forever
添加 IP 地址
使用 ifconfig 命令添加 IP 地址命令為:
$ ifconfig eth0 add 192.9.203.21
ip 類似:
$ ip address add 192.9.203.21 dev eth0
ip 中的子命令可以縮短,所以下面這個命令同樣有效:
$ ip addr add 192.9.203.21 dev eth0
你甚至可以更短些:
$ ip a add 192.9.203.21 dev eth0
移除一個 IP 地址
添加 IP 地址與刪除 IP 地址正好相反。
使用 ifconfig,命令是:
$ ifconfig eth0 del 192.9.203.21
ip 命令的語法是:
$ ip a del 192.9.203.21 dev eth0
啟用或禁用組播
使用 ifconfig 接口來啟用或禁用 組播multicast:
# ifconfig eth0 multicast
對于 ip,使用 set 子命令與設(shè)備(dev)以及一個布爾值和 multicast 選項:
# ip link set dev eth0 multicast on
啟用或禁用網(wǎng)絡(luò)
每個系統(tǒng)管理員都熟悉“先關(guān)閉,然后打開”這個技巧來解決問題。對于網(wǎng)絡(luò)接口來說,即打開或關(guān)閉網(wǎng)絡(luò)。
ifconfig 命令使用 up 或 down 關(guān)鍵字來實現(xiàn):
# ifconfig eth0 up
或者你可以使用一個專用命令:
# ifup eth0
ip 命令使用 set 子命令將網(wǎng)絡(luò)設(shè)置為 up 或 down 狀態(tài):
# ip link set eth0 up
開啟或關(guān)閉地址解析功能(ARP)
使用 ifconfig,你可以通過聲明它來啟用:
# ifconfig eth0 arp
使用 ip,你可以將 arp 屬性設(shè)置為 on 或 off:
# ip link set dev eth0 arp on
文章題目:詳解Linux下ip命令
分享鏈接:http://fisionsoft.com.cn/article/ccoegsh.html


咨詢
建站咨詢
