全面介紹Linux下tcpdump的使用

2021-09-25 06:53:45 字數 1670 閱讀 4917

本文將介紹tcpdump的大部分選項及其表示式的具體用法

tcpdump是linux上的網路抓包工具,可以監視所有經過網絡卡的流量包。

tcpdump的命令格式為tcpdump options expression,通過表示式可以過濾流量。直接啟動tcpdump將監視第乙個網路介面上所有流過的資料報。

-c -d -i -n -nn -v -w -x

tcpdump -i eth0 host 192.168.17.3 and !port 80

# 截獲主機210.27.48.1 和 主機210.27.48.2 或 210.27.48.3的通訊

tcpdump host 210.27.48.1 and \(210.27.48.2 or 210.27.48.3 \)

# 抓取所有經過eth1,目的網路是192.168,但目的主機不是192.168.1.200的tcp資料

tcpdump -i eth1 '((tcp) and ((dst net 192.168

) and (not dst host 192.168

.1.200

)))'

# 監聽協議

tcpdump tcp

tcpdump icmp

tcpdump ip proto ospf

tcpdump ip proto 89

proto[x:y]          : 過濾從x位元組開始的y位元組數。比如ip[2:2]過濾出3、4位元組(第一位元組從0開始排)

proto[x:y] & z = 0 : proto[x:y]和z的與操作為0

proto[x:y] & z !=0 : proto[x:y]和z的與操作不為0

proto[x:y] & z = z : proto[x:y]和z的與操作為z

proto[x:y] = z : proto[x:y]等於z

例:

# 抓取總長度大於150bytes的ip資料報(因為ip資料報頭部第三個和第四個位元組表示資料報的總長度)

tcpdump 'ip[2:2]>150'

抓取tcp的syn包

tcpdump 'tcp[tcpflags] = tcp-syn'
tcpdump host www.baidu.com
獲取主機196.168.1.8接收或發出的telnet包

tcpdump tcp port 23 and host 196.168.1.8
tcpdump net 192.168
tcpdump -x port 80
tcpdump port 80 and 'tcp[((tcp[12:1] & 0xf0) >> 2):4] = 0x47455420'
tcpdump port 80 and 'tcp dst port 80 and (tcp[((tcp[12:1] & 0xf0) >> 2):4] = 0x504f5354)'

Linux下nf conntrack(最全面)

總結如下 dmesg grepnf conntrack 連線跟蹤表nf conntrack 如果輸出值中有 nf conntrack table full,dropping packet 說明伺服器nf conntrack表已經被打滿 如果伺服器上跑著iptables,必須使用的情況下 net.nf...

linux 驅動 GPIO 基礎全面介紹

一 前言 作為乙個工作多年的系統工程師,免不了做兩件事情 培訓新員工和給新員工分配任務。對於那些剛剛從學校出來的學生,一般在開始的時候總是分配一些非常簡單的任務,例如gpio driver led driver。往往cpu datasheet的關於gpio或者io ports的章節都是比較簡單的,非...

setInterval全面的介紹

setinterval function,interval arg1,arg2,argn setinterval object,methodname,interval arg1,arg2,argn 第一種格式是標準動作面板中setinterval函式的預設語法,第二種格式是在專家模式動作中使用的方法...