網絡篇二---linux常用網絡指令

1、設定IP參數,啓動/關閉IP參數

ifconfig

ifup  eth0   開啓eth0網卡

ifdown  eth0   關閉eht0網卡

2、路由修改

route  -n  查看路由信息

3、網絡參數綜合指令

ip

4、測試主機是否存在於網絡中

ping   -c  3   IP:向目標IP發送三次ping請求(即傳送 ICMP 封包去要求對方主機迴應是否存在於網絡環境中)

5、測試兩部主機之間通過的各個節點(node) 通訊狀況的好壞

traceroute  [選項與參數]   IP

選項與參數:
-n :可以不必進行主機的名稱解析,單純用 IP ,速度較快!
-U :使用 UDP 的 port 33434 來進行偵測,這是默認的偵測協議;
-I :使用 ICMP 的方式來進行偵測;
-T :使用 TCP 來進行偵測,一般使用 port 80 測試
-w :若對方主機在幾秒鐘內沒有回聲就宣告不治...預設是 5 秒
-p 端口號:若不想使用 UDP 與 TCP 的預設端口號來偵測,可在此改變端口號

示例:偵測本機到 yahoo 去的各節點聯機狀態
[root@www ~]# traceroute -n  tw.yahoo.com
traceroute to tw.yahoo.com (119.160.246.241), 30 hops max, 40 byte  packets
1 192.168.1.254 0.279 ms 0.156 ms 0.169 ms
2 172.20.168.254 0.430 ms 0.513 ms 0.409 ms
3 10.40.1.1 0.996 ms 0.890 ms 1.042 ms
4 203.72.191.85 0.942 ms 0.969 ms 0.951 ms
5 211.20.206.58 1.360 ms 1.379 ms 1.355 ms
6 203.75.72.90 1.123 ms 0.988 ms 1.086 ms
7 220.128.24.22 11.238 ms 11.179 ms 11.128 ms
8 220.128.1.82 12.456 ms 12.327 ms 12.221 ms
9 220.128.3.149 8.062 ms 8.058 ms 7.990 ms
10 * * *
11 119.160.240.1 10.688 ms 10.590 ms 119.160.240.3 10.047 ms
12 * * *                                                                                                    #可能有防火牆裝置等情況發生所致
這個 traceroute 挺有意思的,這個指令會針對欲連接的目的地之所有 node 進行 UDP的逾時等待, 例如上面的例子當中,由鳥哥的主機連接到 Yahoo 時,他會經過 12 個節點以上,traceroute 會主動的對這 12 個節點做 UDP 的回聲等待,並偵測回覆的時間,每節點偵測三次,最終回傳像上頭顯示的結果。 你可以發現每個節點其實回覆的時間大約在 50 ms 以內,算是還可以的 Internet 環境了。比較特殊的算是第 10/12 個,會回傳星號的,代表該 node 可能設有某些防護措施,讓我們發送的封包信息被丟棄所致。 因爲我們是直接透過路由器轉遞封包,並沒有進入路由器去取得路由器的使用資源,所以某些路由器僅支持封包轉遞, 並不會接受來自客戶端的各項偵測啦!此時就會出現上述的問題。因爲 traceroute 預設使用UDP 封包,如果你想嘗試使用其他封包, 那麼 -I 或 -T 可以試看看!
由於目前 UDP/ICMP 的攻擊層出不窮,因此很多路由器可能就此取消這兩個封包的響應功能。所以我們可以使用 TCP 來偵測! 例如使用同樣的方法,透過等待時間 1秒,以及 TCP 80 埠口的情況下,可以這樣做:

traceroute -w 1 -n -T tw.yahoo.com

6、觀察網絡的聯機狀態  netstat

  網絡聯機狀態中, 又以觀察『我目前開了多少的 port 在等待客戶端的聯機』以及 『目前我的網絡聯機狀態中,有多少聯機已建立或產生問題』最常見,即使用netstat  -tulnp

PS:對顯示的網絡狀態的說明:

ESTABLISED:已建立聯機的狀態;

SYN_SENT:發出主動聯機 (SYN 標誌) 的聯機封包;

SYN_RECV:接收到一個要求聯機的主動聯機封包;

FIN_WAIT1:該插槽服務(socket)已中斷,該聯機正在斷線當中;

FIN_WAIT2:該聯機已掛斷,但正在等待對方主機響應斷線確認的封包;

TIME_WAIT:該聯機已掛斷,但 socket 還在網絡上等待結束;

 LISTEN:通常用在服務的監聽 port !

7、測試主機名和IP是否一致

dig:用法,dig  www.baidu.com   查看www.baidu.com這個域名的DNS解析過程,其中顯示的“;; SERVER: 182.18.99.6#53(182.18.99.6)”爲DNS服務器的IP

host:用法,host  hostname  [server]  使用非/etc/resolv.conf 的 DNS 服務器 IP([server])來查詢某主機的IP(不加則使用本機定義的dns)

8、測試遠程主機某端口是否開放

telent  hostname  [PORT],例如 telent  www.baidu.com 80

9、下載命令wget

wget  url

10、文字接口的抓包命令tupdump

tcpdump  [-AennqX]  [-i 接口]  [-w 儲存檔名]  [-c 次數]  [-r 檔案]  [所欲擷取的封包數據格式]
選項與參數:
-A :封包的內容以 ASCII 顯示,通常用來捉取 WWW 的網頁封包資料。
-e :使用資料連接層 (OSI 第二層) 的 MAC 封包數據來顯示;
-nn:直接以 IP 及 port number 顯示,而非主機名與服務名稱
-q :僅列出較爲簡短的封包信息,每一行的內容比較精簡
-X :可以列出十六進制 (hex) 以及 ASCII 的封包內容,對於監聽封包內容很有用
-i :後面接要『監聽』的網絡接口,例如 eth0, lo, ppp0 等等的界面;
-w :如果你要將監聽所得的封包數據儲存下來,用這個參數就對了!後面接檔名
-r :從後面接的檔案將封包數據讀出來。那個『檔案』是已經存在的檔案,並且這個『檔案』是由 -w 所製作出來的。
-c :監聽的封包數,如果沒有這個參數, tcpdump 會持續不斷的監聽,直到使用者輸入 [ctrl]-c 爲止。
所欲擷取的封包數據格式:我們可以專門針對某些通訊協議或者是 IP 來源進行封包擷取,那就可以簡化輸出的結果,並取得最有用的信息。常見的表示方法有:
'host foo', 'host 127.0.0.1' :針對單部主機來進行封包擷取
'net 192.168' :針對某個網域來進行封包的擷取;
'src host 127.0.0.1' 'dst net 192.168':同時加上來源(src)或目標(dst)限制
'tcp port 21':還可以針對通訊協議偵測,如 tcp, udp, arp, ether 等。還可以利用 and 與 or 來進行封包數據的整合顯示。

常用示例1:以 IP 與 port number 捉下 eth0 這個網絡卡上的封包,持續 3秒
 tcpdump  -i  eth0  -nn

常用示例2:只取出 port 21 的聯機封包

tcpdump  -i  eth0  -nn  port 21

PS:封包的傳遞都是雙向的, client 端發出『要求』而 server 端則予以『響應』,所以,當然是有去有回啊! 而我們也就可以經過這個封包的流向來瞭解到封包運作的過程

常用示例3:使用 tcpdump 在 router 上面監聽『明碼』的傳輸數據時, 例如 FTP 傳輸協議,你覺得會發生什麼問題呢? 我們先在主機端下達『 tcpdump -i lo port 21 -nn -X 』然後再以 ftp 登入本機,並輸入賬號與密碼, 結果你就可以發現如下的狀況:
 [root@www ~]tcpdump -i  lo  -nn  -X  'port 21'

0x0000: 4500 0048 2a28 4000 4006 1286 7f00 0001 E..H*(@.@.......
0x0010: 7f00 0001 0015 80ab 8355 2149 835c d825 .........U!I.\.%
0x0020: 8018 2000 fe3c 0000 0101 080a 0e2e 0b67 .....<.........g
0x0030: 0e2e 0b61 3232 3020 2876 7346 5450 6420 ...a220.(vsFTPd.
0x0040: 322e 302e 3129 0d0a 2.0.1)..
0x0000: 4510 0041 d34b 4000 4006 6959 7f00 0001 E..A.K@[email protected]....
0x0010: 7f00 0001 80ab 0015 835c d825 8355 215d .........\.%.U!]
0x0020: 8018 2000 fe35 0000 0101 080a 0e2e 1b37 .....5.........7
0x0030: 0e2e 0b67 5553 4552 2064 6d74 7361 690d ...gUSER.dmtsai.
0x0040: 0a .
0x0000: 4510 004a d34f 4000 4006 694c 7f00 0001 E..J.O@[email protected]....
0x0010: 7f00 0001 80ab 0015 835c d832 8355 217f .........\.2.U!.
0x0020: 8018 2000 fe3e 0000 0101 080a 0e2e 3227 .....>........2'
0x0030: 0e2e 1b38 5041 5353 206d 7970 6173 7377 ...8PASS.mypassw
0x0040: 6f72 6469 7379 6f75 0d0a ordisyou..

可以發現『該 FTP 軟件使用的是 vsftpd ,並且使用者輸入 dmtsai 這個賬號名稱,且密碼是 mypasswordisyou』 嘿嘿!你說可不可怕啊!如果使用的是明碼的方式來傳輸你的網絡數據? 所以我們才常常在講啊,網絡是很不安全。

11、圖形界面的抓包命令wireshark

基於X-window使用;




發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章