Linux必學(xué)的網(wǎng)絡(luò)操作命令
——
因為Linux系統(tǒng)是在Internet上起源和發(fā)展的,它與生俱來擁有強大的網(wǎng)絡(luò)功能和豐富的網(wǎng)絡(luò)應(yīng)用軟件,尤其是TCP/IP網(wǎng)絡(luò)協(xié)議的實現(xiàn)尤為成熟。Linux的網(wǎng)絡(luò)命令比較多,其中一些命令像ping、ftp、telnet、route、netstat等在其它操作系統(tǒng)上也能看到,但也有一些Unix/Linux系統(tǒng)獨有的命令,如ifconfig、finger、mail等。Linux網(wǎng)絡(luò)操作命令的一個特點是,命令參數(shù)選項和功能很多,一個命令往往還可以實現(xiàn)其它命令的功能。
ifconfig
1.作用
ifconfig用于查看和更改網(wǎng)絡(luò)接口的地址和參數(shù),包括IP地址、網(wǎng)絡(luò)掩碼、廣播地址,使用權(quán)限是超級用戶。
2.格式
ifconfig -interface [options] address
3.主要參數(shù)
-interface:指定的網(wǎng)絡(luò)接口名,如eth0和eth1。
up:激活指定的網(wǎng)絡(luò)接口卡。
down:關(guān)閉指定的網(wǎng)絡(luò)接口。
broadcast address:設(shè)置接口的廣播地址。
pointopoint:啟用點對點方式。
address:設(shè)置指定接口設(shè)備的IP地址。
netmask address:設(shè)置接口的子網(wǎng)掩碼。
4.應(yīng)用說明
ifconfig是用來設(shè)置和配置網(wǎng)卡的命令行工具。為了手工配置網(wǎng)絡(luò),這是一個必須掌握的命令。使用該命令的好處是無須重新啟動機器。要賦給eth0接口IP地址207.164.186.2,并且馬上激活它,使用下面命令:
#fconfig eth0 210.34.6.89 netmask 255.255.255.128 broadcast 210.34.6.127
該命令的作用是設(shè)置網(wǎng)卡eth0的IP地址、網(wǎng)絡(luò)掩碼和網(wǎng)絡(luò)的本地廣播地址。若運行不帶任何參數(shù)的ifconfig命令,這個命令將顯示機器所有激活接口的信息。帶有“-a”參數(shù)的命令則顯示所有接口的信息,包括沒有激活的接口。注意,用ifconfig命令配置的網(wǎng)絡(luò)設(shè)備參數(shù),機器重新啟動以后將會丟失。
如果要暫停某個網(wǎng)絡(luò)接口的工作,可以使用down參數(shù):
#ifconfig eth0 down
ip
1.作用
ip是iproute2軟件包里面的一個強大的網(wǎng)絡(luò)配置工具,它能夠替代一些傳統(tǒng)的網(wǎng)絡(luò)管理工具,例如ifconfig、route等,使用權(quán)限為超級用戶。幾乎所有的Linux發(fā)行版本都支持該命令。
2.格式
ip [OPTIONS] OBJECT [COMMAND [ARGUMENTS]]
3.主要參數(shù)
OPTIONS是修改ip行為或改變其輸出的選項。所有的選項都是以-字符開頭,分為長、短兩種形式。目前,ip支持如表1所示選項。
OBJECT是要管理者獲取信息的對象。目前ip認識的對象見表2所示。
表1 ip支持的選項
-V,-Version 打印ip的版本并退出。
-s,-stats,-statistics 輸出更為詳盡的信息。如果這個選項出現(xiàn)兩次或多次,則輸出的信息將更為詳盡。
-f,-family 這個選項后面接協(xié)議種類,包括inet、inet6或link,強調(diào)使用的協(xié)議種類。如果沒有足夠的信息告訴ip使用的協(xié)議種類,ip就會使用默認值inet或any。link比較特殊,它表示不涉及任何網(wǎng)絡(luò)協(xié)議。
-4 是-family inet的簡寫。
-6 是-family inet6的簡寫。
-0 是-family link的簡寫。
-o,-oneline 對每行記錄都使用單行輸出,回行用字符代替。如果需要使用wc、grep等工具處理ip的輸出,則會用到這個選項。
-r,-resolve 查詢域名解析系統(tǒng),用獲得的主機名代替主機IP地址
COMMAND設(shè)置針對指定對象執(zhí)行的操作,它和對象的類型有關(guān)。一般情況下,ip支持對象的增加(add)、刪除(delete)和展示(show或list)。有些對象不支持這些操作,或者有其它的一些命令。對于所有的對象,用戶可以使用help命令獲得幫助。這個命令會列出這個對象支持的命令和參數(shù)的語法。如果沒有指定對象的操作命令,ip會使用默認的命令。一般情況下,默認命令是list,如果對象不能列出,就會執(zhí)行help命令。
ARGUMENTS是命令的一些參數(shù),它們倚賴于對象和命令。ip支持兩種類型的參數(shù):flag和parameter。flag由一個關(guān)鍵詞組成;parameter由一個關(guān)鍵詞加一個數(shù)值組成。為了方便,每個命令都有一個可以忽略的默認參數(shù)。例如,參數(shù)dev是ip link命令的默認參數(shù),因此ip link ls eth0等于ip link ls dev eth0。我們將在后面的詳細介紹每個命令的使用,命令的默認參數(shù)將使用default標出。
4.應(yīng)用實例
添加IP地址192.168.2.2/24到eth0網(wǎng)卡上:
#ip addr add 192.168.1.1/24 dev eth0
丟棄源地址屬于192.168.2.0/24網(wǎng)絡(luò)的所有數(shù)據(jù)報:
#ip rule add from 192.168.2.0/24 prio 32777 reject
ping
1.作用
ping檢測主機網(wǎng)絡(luò)接口狀態(tài),使用權(quán)限是所有用戶。
2.格式
ping [-dfnqrRv][-c][-i][-I][-l][-p][-s][-t] IP地址
3.主要參數(shù)
-d:使用Socket的SO_DEBUG功能。
-c:設(shè)置完成要求回應(yīng)的次數(shù)。
-f:極限檢測。
-i:指定收發(fā)信息的間隔秒數(shù)。
-I:網(wǎng)絡(luò)界面使用指定的網(wǎng)絡(luò)界面送出數(shù)據(jù)包。
-l:前置載入,設(shè)置在送出要求信息之前,先行發(fā)出的數(shù)據(jù)包。
-n:只輸出數(shù)值。
-p:設(shè)置填滿數(shù)據(jù)包的范本樣式。
-q:不顯示指令執(zhí)行過程,開頭和結(jié)尾的相關(guān)信息除外。
-r:忽略普通的Routing Table,直接將數(shù)據(jù)包送到遠端主機上。
-R:記錄路由過程。
-s:設(shè)置數(shù)據(jù)包的大小。
-t:設(shè)置存活數(shù)值TTL的大小。
-v:詳細顯示指令的執(zhí)行過程。
ping命令是使用最多的網(wǎng)絡(luò)指令,通常我們使用它檢測網(wǎng)絡(luò)是否連通,它使用ICMP協(xié)議。但是有時會有這樣的情況,我們可以瀏覽器查看一個網(wǎng)頁,但是卻無法ping通,這是因為一些網(wǎng)站處于安全考慮安裝了防火墻。另外,也可以在自己計算機上試一試,通過下面的方法使系統(tǒng)對ping沒有反應(yīng):
# echo 1 > /proc/sys/net/ipv4/icmp_echo_ignore_all
linux操作系統(tǒng)文章專題:linux操作系統(tǒng)詳解(linux不再難懂)
ifconfig
1.作用
ifconfig用于查看和更改網(wǎng)絡(luò)接口的地址和參數(shù),包括IP地址、網(wǎng)絡(luò)掩碼、廣播地址,使用權(quán)限是超級用戶。
2.格式
ifconfig -interface [options] address
3.主要參數(shù)
-interface:指定的網(wǎng)絡(luò)接口名,如eth0和eth1。
up:激活指定的網(wǎng)絡(luò)接口卡。
down:關(guān)閉指定的網(wǎng)絡(luò)接口。
broadcast address:設(shè)置接口的廣播地址。
pointopoint:啟用點對點方式。
address:設(shè)置指定接口設(shè)備的IP地址。
netmask address:設(shè)置接口的子網(wǎng)掩碼。
4.應(yīng)用說明
ifconfig是用來設(shè)置和配置網(wǎng)卡的命令行工具。為了手工配置網(wǎng)絡(luò),這是一個必須掌握的命令。使用該命令的好處是無須重新啟動機器。要賦給eth0接口IP地址207.164.186.2,并且馬上激活它,使用下面命令:
#fconfig eth0 210.34.6.89 netmask 255.255.255.128 broadcast 210.34.6.127
該命令的作用是設(shè)置網(wǎng)卡eth0的IP地址、網(wǎng)絡(luò)掩碼和網(wǎng)絡(luò)的本地廣播地址。若運行不帶任何參數(shù)的ifconfig命令,這個命令將顯示機器所有激活接口的信息。帶有“-a”參數(shù)的命令則顯示所有接口的信息,包括沒有激活的接口。注意,用ifconfig命令配置的網(wǎng)絡(luò)設(shè)備參數(shù),機器重新啟動以后將會丟失。
如果要暫停某個網(wǎng)絡(luò)接口的工作,可以使用down參數(shù):
#ifconfig eth0 down
ip
1.作用
ip是iproute2軟件包里面的一個強大的網(wǎng)絡(luò)配置工具,它能夠替代一些傳統(tǒng)的網(wǎng)絡(luò)管理工具,例如ifconfig、route等,使用權(quán)限為超級用戶。幾乎所有的Linux發(fā)行版本都支持該命令。
2.格式
ip [OPTIONS] OBJECT [COMMAND [ARGUMENTS]]
3.主要參數(shù)
OPTIONS是修改ip行為或改變其輸出的選項。所有的選項都是以-字符開頭,分為長、短兩種形式。目前,ip支持如表1所示選項。
OBJECT是要管理者獲取信息的對象。目前ip認識的對象見表2所示。
表1 ip支持的選項
-V,-Version 打印ip的版本并退出。
-s,-stats,-statistics 輸出更為詳盡的信息。如果這個選項出現(xiàn)兩次或多次,則輸出的信息將更為詳盡。
-f,-family 這個選項后面接協(xié)議種類,包括inet、inet6或link,強調(diào)使用的協(xié)議種類。如果沒有足夠的信息告訴ip使用的協(xié)議種類,ip就會使用默認值inet或any。link比較特殊,它表示不涉及任何網(wǎng)絡(luò)協(xié)議。
-4 是-family inet的簡寫。
-6 是-family inet6的簡寫。
-0 是-family link的簡寫。
-o,-oneline 對每行記錄都使用單行輸出,回行用字符代替。如果需要使用wc、grep等工具處理ip的輸出,則會用到這個選項。
-r,-resolve 查詢域名解析系統(tǒng),用獲得的主機名代替主機IP地址
COMMAND設(shè)置針對指定對象執(zhí)行的操作,它和對象的類型有關(guān)。一般情況下,ip支持對象的增加(add)、刪除(delete)和展示(show或list)。有些對象不支持這些操作,或者有其它的一些命令。對于所有的對象,用戶可以使用help命令獲得幫助。這個命令會列出這個對象支持的命令和參數(shù)的語法。如果沒有指定對象的操作命令,ip會使用默認的命令。一般情況下,默認命令是list,如果對象不能列出,就會執(zhí)行help命令。
ARGUMENTS是命令的一些參數(shù),它們倚賴于對象和命令。ip支持兩種類型的參數(shù):flag和parameter。flag由一個關(guān)鍵詞組成;parameter由一個關(guān)鍵詞加一個數(shù)值組成。為了方便,每個命令都有一個可以忽略的默認參數(shù)。例如,參數(shù)dev是ip link命令的默認參數(shù),因此ip link ls eth0等于ip link ls dev eth0。我們將在后面的詳細介紹每個命令的使用,命令的默認參數(shù)將使用default標出。
4.應(yīng)用實例
添加IP地址192.168.2.2/24到eth0網(wǎng)卡上:
#ip addr add 192.168.1.1/24 dev eth0
丟棄源地址屬于192.168.2.0/24網(wǎng)絡(luò)的所有數(shù)據(jù)報:
#ip rule add from 192.168.2.0/24 prio 32777 reject
ping
1.作用
ping檢測主機網(wǎng)絡(luò)接口狀態(tài),使用權(quán)限是所有用戶。
2.格式
ping [-dfnqrRv][-c][-i][-I][-l][-p][-s][-t] IP地址
3.主要參數(shù)
-d:使用Socket的SO_DEBUG功能。
-c:設(shè)置完成要求回應(yīng)的次數(shù)。
-f:極限檢測。
-i:指定收發(fā)信息的間隔秒數(shù)。
-I:網(wǎng)絡(luò)界面使用指定的網(wǎng)絡(luò)界面送出數(shù)據(jù)包。
-l:前置載入,設(shè)置在送出要求信息之前,先行發(fā)出的數(shù)據(jù)包。
-n:只輸出數(shù)值。
-p:設(shè)置填滿數(shù)據(jù)包的范本樣式。
-q:不顯示指令執(zhí)行過程,開頭和結(jié)尾的相關(guān)信息除外。
-r:忽略普通的Routing Table,直接將數(shù)據(jù)包送到遠端主機上。
-R:記錄路由過程。
-s:設(shè)置數(shù)據(jù)包的大小。
-t:設(shè)置存活數(shù)值TTL的大小。
-v:詳細顯示指令的執(zhí)行過程。
ping命令是使用最多的網(wǎng)絡(luò)指令,通常我們使用它檢測網(wǎng)絡(luò)是否連通,它使用ICMP協(xié)議。但是有時會有這樣的情況,我們可以瀏覽器查看一個網(wǎng)頁,但是卻無法ping通,這是因為一些網(wǎng)站處于安全考慮安裝了防火墻。另外,也可以在自己計算機上試一試,通過下面的方法使系統(tǒng)對ping沒有反應(yīng):
# echo 1 > /proc/sys/net/ipv4/icmp_echo_ignore_all
評論