linuxtcpdump
❶ tcpmp是linux自帶的嗎
是的 linux的發行包里自帶tcpmp
名稱 :tcpmp
簡介 : A network traffic monitoring tool
網址 :http://www.tcpmp.org
協議 : BSD with advertising
描述 : Tcpmp is a command-line tool for monitoring network traffic.
: Tcpmp can capture and display the packet headers on a particular
: network interface or on all interfaces. Tcpmp can display all of
: the packet headers, or just the ones that match particular criteria.
: Install tcpmp if you need a program to monitor network traffic.
❷ 關於linux tcpmp命令
用簡單的話來定義tcpmp,就是:mp the traffic on a network,根據使用者的定義對網路上的數據包進行截獲的包分析工具。 tcpmp可以將網路中傳送的數據包的「頭」完全截獲下來提供分析。它支持針對網路層、協議、主機、網路或埠的過濾,並提供and、or、not等邏輯語句來幫助你去掉無用的信息。
實用命令實例
默認啟動
tcpmp
普通情況下,直接啟動tcpmp將監視第一個網路介面上所有流過的數據包。
監視指定網路介面的數據包
tcpmp -i eth1
如果不指定網卡,默認tcpmp只會監視第一個網路介面,一般是eth0,下面的例子都沒有指定網路介面。
監視指定主機的數據包
列印所有進入或離開sundown的數據包.
tcpmp host sundown
也可以指定ip,例如截獲所有210.27.48.1 的主機收到的和發出的所有的數據包
tcpmp host 210.27.48.1
列印helios 與 hot 或者與 ace 之間通信的數據包
tcpmp host helios and \( hot or ace \)
截獲主機210.27.48.1 和主機210.27.48.2 或210.27.48.3的通信
tcpmp host 210.27.48.1 and \ (210.27.48.2 or 210.27.48.3 \)
列印ace與任何其他主機之間通信的IP 數據包, 但不包括與helios之間的數據包.
tcpmp ip host ace and not helios
如果想要獲取主機210.27.48.1除了和主機210.27.48.2之外所有主機通信的ip包,使用命令:
tcpmp ip host 210.27.48.1 and ! 210.27.48.2
截獲主機hostname發送的所有數據
tcpmp -i eth0 src host hostname
監視所有送到主機hostname的數據包
tcpmp -i eth0 dst host hostname
監視指定主機和埠的數據包
如果想要獲取主機210.27.48.1接收或發出的telnet包,使用如下命令
tcpmp tcp port 23 and host 210.27.48.1
對本機的udp 123 埠進行監視 123 為ntp的服務埠
tcpmp udp port 123
監視指定網路的數據包
列印本地主機與Berkeley網路上的主機之間的所有通信數據包(nt: ucb-ether, 此處可理解為'Berkeley網路'的網路地址,此表達式最原始的含義可表達為: 列印網路地址為ucb-ether的所有數據包)
tcpmp net ucb-ether
列印所有通過網關snup的ftp數據包(注意, 表達式被單引號括起來了, 這可以防止shell對其中的括弧進行錯誤解析)
tcpmp 'gateway snup and (port ftp or ftp-data)'
列印所有源地址或目標地址是本地主機的IP數據包
(如果本地網路通過網關連到了另一網路, 則另一網路並不能算作本地網路.(nt: 此句翻譯曲折,需補充).localnet 實際使用時要真正替換成本地網路的名字)
tcpmp ip and not net localnet
❸ linux-2.4 如何安裝 tcpmp
安裝過程參照以下步驟:
1、打開網址:www.tcpmp.org/ 下載 libpcap-1.0.0.tar.gz (512.0KB) 軟體包,通過命令 tar zxvf libpcap-1.0.0.tar.gz 解壓文件,並將其放入自定義的安裝目錄。
2、打開網址:flex.sourceforge.net/ 下載 flex-2.5.35.tar.gz (1.40MB) 軟體包,通過 tar zxvf flex-2.5.35.tar.gz 解壓文件,並將其放入上述自定義的安裝目錄中。
註:如果沒有編譯安裝此文件,在編譯安裝libpcap時,就會出現 「configure: error: Your operating system's lex is insufficient to compile libpcap.」的錯誤提示。
3、打開網址:ftp.gnu.org/gnu/bison/ 下載 bison-2.4.1.tar.gz (1.9MB) 軟體包,通過 tar zxvf bison-2.4.1.tar.gz 解壓文件,並將其放入上述自定義的安裝目錄中。
註:如果沒有編譯安裝此文件,在編譯安裝libpcap時,就會出現 "configure: WARNING: don't have both flex and bison; reverting to lex/yacc checking for capable lex... insufficient" 的錯誤提示。
4、打開網址:ftp.gnu.org/gnu/m4/ 下載 m4-1.4.13.tar.gz (1.2MB)軟體包,通過 tar zxvf m4-1.4.13.tar.gz 解壓文件,並將其放入上述自定義的安裝目錄中。
註:如果沒有編譯安裝此文件,在編譯安裝bison-2.4.1時,就會出現 「configure: error: GNU M4 1.4 is required」的錯誤提示。
5、而後依次進入目錄m4-1.4.13,bison-2.4.1,flex-2.5.35,libpcap-1.0.0 並執行以下命令:
(sudo) ./configure
(sudo) make
(sudo) make install
❹ linux上用tcpmp抓包的問題
(管理員,給人家解釋一下嘛,何必呢。)。。。你確定滿意答案了,搞的我只能這樣回答你了,具體可以看看man tcpmp 這里-nn 是不把地址轉換為域名,不把埠轉換為埠名,你不加.tcpmp在抓第一個包的時候就要把地址轉換成域名,埠轉換成埠名,如果你的DNS沒有配置好,就會延時,等待解析,,直到最後超時,才會顯示出來抓到的包,而這段時間還沒完,你可能已經CTRL+C中止了,所以抓不到,你多等會兒可能就出來了(這段時間可能很長的)。加了-nn,就不解析了,(就不存在DNS沒配置好,等待解析直到超時了)。直接以IP地址,埠號的形式顯示出來了。
❺ tcpmp在linux命令中是什麼意思
你使用tcpmp抓包的話它會一直監聽你需要監聽的埠,如果你想退出的話輸入:ctrl + c可以強制退出。
❻ linux下tcpmp抓包存在什麼位置
tcpmp默認的是標准輸出,一般來講就是顯示器,如果要將抓包結果保存到文件則需要使用-w參數,例如:
$tcpmp-ieth1-w/tmp/xxx.cap
抓eth1的包
❼ TCPDUMP 抓包 怎麼查看 抓的包的內容
1、tcpmp檢測登錄linux系統輸入tcpmp,如果找不到表示沒有安裝。也可以用rpm查詢。
❽ tcpmp 怎麼在linux操作系統上抓包
默認系統里邊沒有安裝有tcpmp的,無法直接使用
這里我們可以使用yum來直接安裝它
yum install -y tcpmp
如果忘記了這個的用法,我們可以使用 tcpmp --help 來查看一下使用方法
一般我們的伺服器里邊只有一個網卡,使用tcpmp可以直接抓取數據包,但是這樣查看太麻煩了,所以都會添加參數來進行獲取的。
例如我截取本機(192.168.31.147)和主機114.114.114.114之間的數據
tcpmp -n -i eth0 host 192.168.31.147 and 114.114.114.114
還有截取全部進入伺服器的數據可以使用以下的格式
tcpmp -n -i eth0 dst 192.168.31.147
或者伺服器有多個IP 可以使用參數
tcpmp -n -i eth0 dst 192.168.31.147 or 192.168.31.157
我們抓取全部進入伺服器的TCP數據包使用以下的格式,大家可以參考下
tcpmp -n -i eth0 dst 192.168.31.147 or 192.168.31.157 and tcp
從本機出去的數據包
tcpmp -n -i eth0 src 192.168.31.147 or 192.168.31.157
tcpmp -n -i eth0 src 192.168.31.147 or 192.168.31.157 and port ! 22 and tcp
或者可以條件可以是or 和 and 配合使用即可篩選出更好的結果。
❾ 在Linux系統怎麼用tcpmp命令
------------------------------------tcpmp--------------------------------
協議報文分析器:
sniffer: 商業工具
tcpmp, wireshark(GUI), tshark(CLI)
tcpmp [options] 過濾條件
獲取報文的條件:
ip src host 172.16.100.1
tcp src or dst port 21
udp dst port 53
tcp src or dst port 21 AND src host 172.16.100.1
tcp port 21 AND host 172.16.100.1
tcpmp的語法:
tcpmp [options] [Protocol] [Direction] [Host(s)] [Value] [Logical Operations] [Other expression]
Protocol(協議):
Values(取值): ether, fddi, ip, arp, rarp, decnet, lat, sca, moprc, mopdl, tcp and udp.
If no protocol is specified, all the protocols are used.
Direction(流向):
Values(取值): src, dst, src and dst, src or dst
If no source or destination is specified, the "src or dst" keywords are applied. (默認是src or dst)
For example, "host 10.2.2.2" is equivalent to "src or dst host 10.2.2.2".
Host(s)(主機):
Values(替代關鍵字): net, port, host, portrange.
If no host(s) is specified, the "host" keyword is used. 默認如果此段沒有指定關鍵字,默認即host。
For example, "src 10.1.1.1" is equivalent to "src host 10.1.1.1".
Logical Operations:
(1) and
and or &&
(2) or
or or ||
(3) except
not or !
常用選項:
-i any : 指定在哪個網卡進行抓包
-n : 不反解主機名
-nn : 不反解主機名與埠號
-X : 以16進制格式與ASCII格式顯示報文
-XX : 除了顯示X的內容還顯示乙太網首部
-v, -vv, -vvv : 顯示更詳細的信息
-c # : Only get x number of packets and then stop.
-s : Define the snaplength (size) of the capture in bytes. Use -s0 to get everything, unless you are intentionally capturing less.
-S : Print absolute sequence numbers.
-e : Get the ethernet header as well.
-q : Show less protocol information.
-E : Decrypt IPSEC traffic by providing an encryption key.
-A :Display Captured Packets in ASCII
-w /path/to/some_file : Capture the packets and write into a file
-r /path/from/some_file : Reading the packets from a saved file
-tttt : Capture packets with proper readable timestamp
eg:
tcpmp -i eth0 -X -nn -vv tcp port 100
可以在報文上面看一下有無user與pass的信息.
tcpmp -i eth0 -X -nn -vv tcp port 110 and ip src 192.168.10.1
ip host 172.16.100.1
ip src host 172.16.100.1
ip dst host 172.16.100.1
ip src and dst host 172.16.100.1
❿ linux怎麼抓tcpmp的數據包
linux下有命令可直接執行抓包的,命令如下:1、tcpmp -vv -i ethN -s 10240 -w /root/abc.cap host ip
2、上述命令中,ethN,是你要抓的本機網卡,一般是eth0,可使用ifconfig查看使用的哪個網卡
-s 指定的是抓包數量 -w指定的是抓到的包寫到哪個位置 host ip即為抓取哪個ip 的包