ifconfig
1.作用
ifconfig用於查看和更改網絡接口的地址和參數,包括IP地址、網絡掩碼、廣播地址,使用權限是超級用戶。
2.格式
ifconfig -interface [options] address
3.主要參數
-interface: 指定的網絡接口名,如eth0和eth1。
up: 激活指定的網絡接口卡。
down: 關閉指定的網絡接口。
broadcast address: 設置接口的廣播地址。
pointopoint: 啟用點對點方式。
address: 設置指定接口設備的IP地址。
netmask address: 設置接口的子網掩碼。
4.應用說明
ifconfig是用來設置和配置網卡的命令行工具。為了手工配置網絡,這是一個必須掌握的命令。使用該命令的好處是無須重新啟動機器。要賦給eth0接口IP地址207.164.186.2,並且馬上激活它,使用下面命令:
#fconfig eth0 210.34.6.89 netmask 255.255.255.128 broadcast 210.34.6.127
說明:
該命令的作用是設置網卡eth0的IP地址、網絡掩碼和網絡的本地廣播地址。若運行不帶任何參數的ifconfig命令,這個命令將顯示機器所有激活接口的信息。帶有“-a”參數的命令則顯示所有接口的信息,包括沒有激活的接口。注意,用ifconfig命令配置的網絡設備參數,機器重新啟動以後將會丟失。
如果要暫停某個網絡接口的工作,可以使用down參數:
#ifconfig eth0 down
ping
1.作用
ping檢測主機網絡接口狀態,使用權限是所有用戶。
2.格式
ping [-dfnqrRv][-c][-i][-I][-l][-p][-s][-t] IP地址
3.主要參數
-d:使用Socket的SO_DEBUG功能。
-c:設置完成要求回應的次數。
-f:極限檢測。
-i:指定收發信息的間隔秒數。
-I:網絡界面使用指定的網絡界面送出數據包。
-l:前置載入,設置在送出要求信息之前,先行發出的數據包。
-n:只輸出數值。
-p:設置填滿數據包的范本樣式。
-q:不顯示指令執行過程,開頭和結尾的相關信息除外。
-r:忽略普通的Routing Table,直接將數據包送到遠端主機上。
-R:記錄路由過程。
-s:設置數據包的大小。
-t:設置存活數值TTL的大小。
-v:詳細顯示指令的執行過程。
說明:
ping 命令是使用最多的網絡指令,通常我們使用它檢測網絡是否連通,它使用ICMP協議。但是有時會有這樣的情況,我們可以浏覽器查看一個網頁,但是卻無法 ping通,這是因為一些網站處於安全考慮安裝了防火牆。另外,也可以在自己計算機上試一試,通過下面的方法使系統對ping沒有反應:
# echo 1 > /proc/sys/net/ipv4/icmp_echo_ignore_all
netstat
1.作用
檢查整個Linux網絡狀態。
2.格式
netstat [-acCeFghilMnNoprstuvVwx][-A][--ip]
3.主要參數
-a--all:顯示所有連線中的Socket。
-A:列出該網絡類型連線中的IP相關地址和網絡類型。
-c--continuous:持續列出網絡狀態。
-C--cache:顯示路由器配置的快取信息。
-e--extend:顯示網絡其它相關信息。
-F--fib:顯示FIB。
-g--groups:顯示多重廣播功能群組組員名單。
-h--help:在線幫助。
-i--interfaces:顯示網絡界面信息表單。
-l--listening:顯示監控中的服務器的Socket。
-M--masquerade:顯示偽裝的網絡連線。
-n--numeric:直接使用IP地址,而不通過域名服務器。
-N--netlink--symbolic:顯示網絡硬件外圍設備的符號連接名稱。
-o--timers:顯示計時器。
-p--programs:顯示正在使用Socket的程序識別碼和程序名稱。
-r--route:顯示Routing Table。
-s--statistice:顯示網絡工作信息統計表。
-t--tcp:顯示TCP傳輸協議的連線狀況。
-u--udp:顯示UDP傳輸協議的連線狀況。
-v--verbose:顯示指令執行過程。
-V--version:顯示版本信息。
-w--raw:顯示RAW傳輸協議的連線狀況。
-x--unix:和指定“-A unix”參數相同。
--ip--inet:和指定“-A inet”參數相同。
4.應用實例
netstat 主要用於Linux察看自身的網絡狀況,如開啟的端口、在為哪些用戶服務,以及服務的狀態等。此外,它還顯示系統路由表、網絡接口狀態等。可以說,它是一個綜合性的網絡狀態的察看工具。在默認情況下,netstat只顯示已建立連接的端口。如果要顯示處於監聽狀態的所有端口,使用-a參數即可:
#netstat -a
Active Internet connections (only servers)
Proto Recv-Q Send-Q Local Address Foreign Address State
tcp 0 0 *:32768 *:* LISTEN
tcp 0 0 *:32769 *:* LISTEN
tcp 0 0 *:nfs *:* LISTEN
tcp 0 0 *:32770 *:* LISTEN
tcp 0 0 *:868 *:* LISTEN
tcp 0 0 *:617 *:* LISTEN
tcp 0 0 *:mysql *:* LISTEN
tcp 0 0 *:netbios-ssn *:* LISTEN
tcp 0 0 *:sunrpc *:* LISTEN
tcp 0 0 *:10000 *:* LISTEN
tcp 0 0 *:http *:* LISTEN
......
上面顯示出,這台主機同時提供HTTP、FTP、NFS、MySQL等服務。
小技巧:
1.在一張網卡上綁定多個IP地址
在Linux下,可以使用ifconfig方便地綁定多個IP地址到一張網卡。例如,eth0接口的原有IP地址為192.168.0 .254,可以執行下面命令:
ifconfig eth0:0 192.168.0.253 netmask 255.255.255.0
ifconfig eth0:1 192.168.0.252 netmask 255.255.255.0
......
2.修改網卡MAC地址
首先必須關閉網卡設備,命令如下:
/sbin/ifconfig eth0 down
修改MAC地址,命令如下:
/sbin/ifconfig eth0 hw ether 00:AA:BB:CC:DD:EE
重新啟用網卡:
/sbin/ifconfig eht0 up
這樣網卡的MAC地址就更改完成了。每張網卡的MAC地址是惟一,但不是不能修改的,只要保證在網絡中的MAC地址的惟一性就可以了。