複製鏈接
請複製以下鏈接發送給好友

ethereal

(網絡協議)

鎖定
Ethereal (Ethereal:A Network Packet Sniffing Tool)是當前較為流行的一種計算機網絡調試和數據包嗅探軟件。Ethereal 基本類似於tcpdump,但Ethereal 還具有設計完美的 GUI 和眾多分類信息及過濾選項。用户通過 Ethereal,同時將網卡插入混合模式,可以查看到網絡中發送的所有通信流量。 Ethereal 應用於故障修復、分析、軟件和協議開發以及教育領域。它具有用户對協議分析器所期望的所有標準特徵,並具有其它同類產品所不具備的有關特徵。
外文名
ethereal
類    別
計算機網絡調試和數據包嗅探軟件
應用範圍
UnixLinuxWindows
端口號
ACAP 674
安    裝
winpcap、Ethereal
Ethereal使用
capture選項

ethereal發展簡史

1997年底,Gerald Combs需要一個能夠追蹤網絡流量的工具軟件作為其工作上的輔助。因此他開始撰寫Ethereal軟件。
Ethereal 在經過幾次中斷開發的事件過後,終於在1998年7月發佈其第一個版本 v0.2.0。自此之後,Combs收到了來自全世界的補丁、錯誤回報與鼓勵信件。Ethereal的發展就此開始。不久之後,Gilbert Ramirez 看到了這套軟件的開發潛力並開始參予低級程序的開發。1998年10月,來自 Network Appliance 公司的 Guy Harris 在查找一套比 tcpview(另外一套網絡數據包截取程序)更好的軟件。於是他也開始參與Ethereal的開發工作。
1998年底,一位在教授 TCP/IP 課程的講師 Richard Sharpe,看到了這套軟件的發展潛力,而後開始參與開發與加入新協定的功能。在當時,新的通信協定的制定並不複雜,因此他開始在Ethereal上新增的數據包截取功能,幾乎包含了當時所有通信協定。
自此之後,數以千計的人開始參與Ethereal的開發,多半是因為希望能讓Ethereal截取特定的,尚未包含在Ethereal默認的網絡協定的數據包而參予新的開發。
2006年6月,因為商標問題,Ethereal更名為Wireshark。 [1] 

ethereal軟件特徵

Ethereal軟件封面 Ethereal軟件封面
Ethereal 主要具有以下特徵:
在實時時間內,從網絡連接處捕獲數據,或者從被捕獲文件處讀取數據;
Ethereal 可以讀取從 tcpdump(libpcap)、網絡通用嗅探器(被壓縮和未被壓縮)、SnifferTM 專業版、NetXrayTM、Sun snoop 和 atmsnoop、Shomiti/Finisar 測試員、AIX 的 iptrace、Microsoft 的網絡監控器、Novell 的 LANalyzer、RADCOM 的 WAN/LAN 分析器、 ISDN4BSD 項目的 HP-UX nettl 和 i4btrace、Cisco 安全 IDS iplog 和 pppd 日誌( pppdump 格式)、WildPacket 的 EtherPeek/TokenPeek/AiroPeek 或者可視網絡的可視 UpTime 處捕獲的文件。此外 Ethereal 也能從 Lucent/Ascend WAN 路由器和 Toshiba ISDN 路由器中讀取跟蹤報告,還能從 VMS 的 TCPIP 讀取輸出文本和 DBS Etherwatch。
以太網FDDIPPP令牌環IEEE 802.11ATM 上的 IP 和迴路接口(至少是某些系統,不是所有系統都支持這些類型)上讀取實時數據。
通過 GUITTY 模式 tethereal 程序,可以訪問被捕獲的網絡數據
通過 editcap 程序的命令行交換機,有計劃地編輯或修改被捕獲文件。
當前602協議可被分割。
輸出文件可以被保存或打印為純文本或 PostScript格式。
通過顯示過濾器精確顯示數據。
顯示過濾器也可以選擇性地用於高亮區和顏色包摘要信息。
所有或部分被捕獲的網絡跟蹤報告都會保存到磁盤中。

ethereal系統介紹

Ethereal是一個開放源碼的網絡分析系統,也是是目前最好的開放源碼的網絡協議分析器,支持Linux和windows平台。Ethereal起初由Gerald Combs開發,隨後由一個鬆散的Etheral團隊組織進行維護開發。它目前所提供的強大的協議分析功能完全可以媲美商業的網絡分析系統,自從1998年發佈最早的0.2版本至今,大量的志願者為Ethereal添加新的協議解析器,如今Ethereal已經支持五百多種協議解析。很難想象如此多的人開發的代碼可以很好的融入系統中;並且在系統中加入一個新的協議解析器很簡單,一個不瞭解系統的結構的新手也可以根據留出的接口進行自己的協議開發。這都歸功於Ehereal良好的設計結構。事實上由於網絡上各種協議種類繁多,各種新的協議層出不窮。一個好的協議分析器必需有很好的可擴展性和結構。這樣才能適應網絡發展的需要不斷加入新的協議解析器。
1 Ethereal的捕包平台
網絡分析系統首先依賴於一套捕捉網絡數據包的函數庫。這套函數庫工作在在網絡分析系統模塊的最底層。作用是從網卡取得數據包或者根據過濾規則取出數據包的子集,再轉交給上層分析模塊。從協議上説,這套函數庫將一個數據包從鏈路層接收,至少將其還原至傳輸層以上,以供上層分析。
在Linux系統中, 1992年Lawrence Berkeley Lab的Steven McCanne和Van Jacobson提出了包過濾器的一種的實現,BPF(BSD Packet Filter)。Libpcap是一個基於BPF的開放源碼的捕包函數庫。現有的大部分Linux捕包系統都是基於這套函數庫或者是在它基礎上做一些針對性的改進。
在window系統中,意大利人Fulvio Risso和Loris Degioanni提出並實現了Winpcap函數庫,作者稱之為NPF。由於NPF的主要思想就是來源於BPF,它的設計目標就是為windows系統提供一個功能強大的開發式數據包捕獲平台,希望在Linux系統中的網絡分析工具經過簡單編譯以後也可以移植到windows中,因此這兩種捕包架構是非常相似的。就實現來説提供的函數調用接口也是一致的。
Ethereal網絡分析系統也需要一個底層的抓包平台,在Linux中是採用Libpcap函數庫抓包,在windows系統中採用winpcap函數庫抓包。
2 層次化的數據包協議分析方法
取得捕包函數捕回的數據包後就需要進行協議分析和協議還原工作了。由於OSI的7層協議模型,協議數據是從上到下封裝後發送的。對於協議分析需要從下至上進行。首先對網絡層的協議識別後進行組包還原然後脱去網絡層協議頭。將裏面的數據交給傳輸層分析,這樣一直進行下去直到應用層
Ip
| \
Tcp udp
| \
HTTP TFTP
由於網絡協議種類很多,就Ethereal所識別的500多種協議來説,為了使協議和協議間層次關係明顯。從而對數據流裏的各個層次的協議能夠逐層處理。Ethereal系統採用了協議樹的方式。一個簡單的協議樹。如果協議A的所有數據都是封裝在協議B裏的,那麼這個協議A就是協議B是另外一個協議的兒子節點。我們將最低層的無結構數據流作為根接點。那麼具有相同父節點的協議成為兄弟節點。那麼這些擁有同樣父協議兄弟節點協議如何互相區分了?Ethereal系統採用協議的特徵字來識別。每個協議會註冊自己的特徵字。這些特徵字給自己的子節點協議提供可以互相區分開來的標識。比如tcp協議的port字段註冊後。 Tcp.port=21就可以認為是ftp協議, 特徵字可以是協議規範定義的任何一個字段。比如ip協議就可以定義proto字段為一個特徵字。
在Ethereal中註冊一個協議解析器首先要指出它的父協議是什麼。另外還要指出自己區別於父節點下的兄弟接點協議的特徵。比如ftp協議。在Ethereal中他的父接點是tcp協議,它的特徵就是tcp協議的port字段為21。
這樣當一個端口為21的tcp數據流來到時。首先由tcp協議註冊的解析模塊處理,處理完之後通過查找協議樹找到自己協議下面的子協議,判斷應該由那個子協議來執行,找到正確的子協議後,就轉交給ftp註冊的解析模塊處理。這樣由根節點開始一層層解析下去。
由於採用了協議樹加特徵字的設計,這個系統在協議解析上由了很強的擴展性,增加一個協議解析器只需要將解析函數掛到協議樹的相應節點上即可。
3 基於插件技術的協議分析器
所謂插件技術,就是在程序的設計開發過程中,把整個應用程序分成宿主程序和插件兩個部分,宿主程序與插件能夠相互通信,並且,在宿主程序不變的情況下,可以通過增減插件或修改插件來調整應用程序的功能。運用插件技術可以開發出伸縮性良好、便於維護的應用程序。它著名的應用實例有:媒體播放器winamp、微軟的網絡瀏覽器ie等。
由於現在網絡協議種類繁多,為了可以隨時增加新的協議分析器,一般的協議分析器都採用插件技術,這樣如果需要對一個新的協議分析只需要開發編寫這個協議分析器並調用註冊函數在系統註冊就可以使用了。通過增加插件使程序有很強的可擴展性,各個功能模塊內聚
協議分析器中新增加一個協議插件一般需要插件安裝或者註冊,插件初始化,插件處理3個步驟,下面以Ethereal為例進行分析如何利用插件技術新增加一個協議分析模塊。
Ethereal由於採用插件技術,一個新加入開發的程序員開發一種新的協議分析模塊的時候不需要了解所有的代碼,他只需要寫好這個協議模塊的函數後,寫一個格式為proto_reg_handoff_XXX的函數,在函數內調用註冊函數告訴系統在什麼時候需要調用這個協議模塊。比如
你事先寫好了一個名為dissect_myprot的協議解析模塊,它是用來解析tcp協議端口為250的數據。可以利用這些語句來將這個解析器註冊到系統中
proto_reg_handoff_myprot(void)
{
dissector_handle_t myprot_handle;
myprot_handle = create_dissector_handle(dissect_myprot,
proto_myprot);
dissector_add("tcp.port", 250, myprot_handle);
}
這段代碼告訴系統當tcp協議數據流端口為250的時候要調用dissect_myprot這個函數模塊。
在Ethereal中有一個腳本專門來發現開發者定義的類式proto_reg_handoff_xxx這樣的註冊函數名,然後自動生成調用這些註冊函數的代碼。這樣開發者不需要知道自己的註冊函數如何被調用的。這樣一個新的協議分析模塊就加入到系統中了。
由於採用了插件方式,Ethereal良好的結構設計讓開發者只需要關係自己開發的協議模塊,不需要關心整個系統結構,需要將模塊整合進系統只需要寫一個註冊函數即可,連初始化時調用這個註冊函數都由腳本自動完成了。正是因為有很好的體系結構,這個系統才能夠開發出如此多的協議解析器。
儘管Ethereal是目前最好的開放源碼網絡分析系統,但Ethereal仍然有一些可以改進的地方,一個優秀的網絡分析器,儘可能的正確分析出數據協議和高效的處理數據是兩個重要的指標。在協議識別方面Ethereal大多采用端口識別,有少量協議採用內容識別。這就讓一些非標準端口的協議數據沒有正確解析出來。比如ftp協議如果不是21端口的話,Ethereal就無法識別出來,只能作為tcp數據處理。另外對於內容識別式。Ethereal是將所以內容識別的函數組成一張入口表。每次協議數據需要內容識別時,按字母順序逐個調用表裏的每個識別函數。比如對於識別yahoo massanger協議。主要是看數據前幾個字節是不是’ymsg’.由於協議名為y開頭。所以當識別出協議時已經把所有內容識別函數調用了一遍。這些都是由於Ethereal沒有實現tcp協議棧,無法做到流級別的識別。導致在協議識別方面有點缺陷。

ethereal應用範圍

Ethereal 是一種開放源代碼的許可軟件,允許用户向其中添加改進方案。Ethereal 適用於當前所有較為流行的計算機系統,包括 UnixLinuxWindows

ethereal使用入門

Ethereal 可以用來從網絡上抓包,並能對包進行分析。下面介紹windows 下Ethereal 的使用方法:
安裝
(1)安裝winpcap
(2)安裝Ethereal
使用
windows 程序,使用很簡單。
啓動ethereal 以後,選擇菜單Capture->Start ,就OK 了。當你不想抓的時候,按一下stop, 抓的包就會顯示在面板中,並且已經分析好了。
Ethereal使用-capture選項
interface: 指定在哪個接口(網卡)上抓包。一般情況下都是單網卡,所以使用缺省的就可以了
Limit each packet: 限制每個包的大小,缺省情況不限制
Capture packets in promiscuous mode: 是否打開混雜模式。如果打開,抓取所有的數據包。一般情況下只需要監聽本機收到或者發出的包,因此應該關閉這個選項。
Filter:過濾器。只抓取滿足過濾規則的包(可暫時略過)
File:如果需要將抓到的包寫到文件中,在這裏輸入文件名稱。
use ring buffer: 是否使用循環緩衝。缺省情況下不使用,即一直抓包。注意,循環緩衝只有在寫文件的時候才有效。如果使用了循環緩衝,還需要設置文件的數目,文件多大時回捲
其他的項選擇缺省的就可以了
Ethereal的抓包過濾器
抓包過濾器用來抓取感興趣的包,用在抓包過程中。 抓包過濾器使用的是libcap 過濾器語言,在tcpdump 的手冊中有詳細的解釋,基本結構是: [not] primitive [and|or [not] primitive ...]
個人觀點,如果你想抓取某些特定的數據包時,可以有以下兩種方法,你可以任選一種, 個人比較偏好第二種方式:
1、在抓包的時候,就先定義好抓包過濾器,這樣結果就是隻抓到你設定好的那些類型的數 據包;
2、先不管三七二十一,把本機收到或者發出的包一股腦的抓下來,然後使用下節介紹的顯 示過濾器,只讓Ethereal 顯示那些你想要的那些類型的數據包;
etheral的顯示過濾器(重點內容)
在抓包完成以後,顯示過濾器可以用來找到你感興趣的包,可以根據1)協議2)是否存在某個域3)域值4)域值之間的比較來查找你感興趣的包。
舉個例子,如果你只想查看使用tcp 協議的包,在ethereal 窗口的左下角的Filter 中輸入tcp, 然後回車,Ethereal 就會只顯示tcp 協議的包。
值比較表達式可以使用下面的操作符來構造顯示過濾器自然語言類c 表示舉例eq == ip.addr==10.1.10.20 ne != ip.addr!=10.1.10.20 gt > frame.pkt_len>10 lt < frame.pkt_len<10 ge >= frame.pkt_len>=10 le <= frame.pkt_len<=10
表達式組合可以使用下面的邏輯操作符將表達式組合起來自然語言類c 表示舉例and && 邏輯與,比如ip.addr=10.1.10.20&&tcp.flag.fin or || 邏輯或,比如ip.addr=10.1.10.20||ip.addr=10.1.10.21 xor ^^ 異或,如tr.dst[0:3] == 0.6.29 xor tr.src[0:3] == not ! 邏輯非,如 !llc
在Ethereal 使用協議插件
Ethereal 能夠支持許多協議,但有些協議需要安裝插件以後才能解,比如H.323,以H.323 協議為例,首先下載Ethereal 的H.323 插件,
(1)啓動Ethereal
(2)菜單Edit->Preference
(3)單擊Protocols 前面的"+"號,展開Protocols 4)找到Q931 ,並單擊
(5)確保"Desegment.... TCP segments" 是選中的(即方框被按下去)
(6)單擊TCP
(7)確保"Allow....TCP streams" 是選中的
(8)確保沒有選中"Check....TCP checksum" 和"Use....sequence numbers"
(9)單擊TPKT
(10)確保"Desegment....TCP segments" 是選中的
(11)點擊Save,然後點擊Apply ,然後點擊OK 你也完全可以不斷地重新安裝新版本winpcap 和Ethreal, 這樣就可以不需在舊的ethreal 的版本中安裝新的插件來支持新的協議插件。這也是懶人的一種做法。

ethereal數據包

Ethereal是一個圖形用户接口(GUI)的網絡嗅探器,能夠完成與Tcpdump相同的功能,但操作界面要友好很多。Ehtereal和Tcpdump都依賴於pcap庫(libpcap),因此兩者在許多方面非常相似(如都使用相同的過濾規則和關鍵字)。Ethereal和其它圖形化的網絡嗅探器都使用相同的界面模式,如果能熟練地使用Ethereal,那麼其它圖形用户界面的嗅探器基本都可以操作。
Ethereal的安裝
在網站上可以下載到最新的Ethereal源碼包。
下面以Ethereal 0.9.9為例,講述如何安裝Ethereal,此處使用的操作系統是Red Hat 8.0。
首先下載最新的源碼包,並將其解壓縮
# cd /usr/local/src/
# tar xvf ethereal-0.9.9.tar
同Tcpdump一樣,在編譯Ethereal之前應先確定已經安裝pcap庫(libpcap),這是編譯Ethereal時所必需的。如果該庫已經安裝,就可以執行下面的命令來編譯並安裝Ethereal:
# cd ethereal-0.9.9
# ./configure
# make
# make install
圖1 圖1
設置Ethereal的過濾規則當編譯並安裝好Ethereal後,就可以執行“ethereal”命令來啓動Ethereal。在用Ethereal截獲數據包之前,應該為其設置相應的過濾規則,可以只捕獲感興趣的數據包。Ethereal使用與Tcpdump相似的過濾規則,並且可以很方便地存儲已經設置好的過濾規則。要為Ethereal配置過濾規則,首先單擊“Edit”選單,然後選擇“Capture Filters...”菜單項,打開“Edit Capture Filter List”對話框(如圖1所示)。
圖2 圖2
因為此時還沒有添加任何過濾規則,因而該對話框右側的列表框是空的。
在Ethereal中添加過濾器時,需要為該過濾器指定名字及規則。例如,要在主機10.1.197.162間創建過濾器,可以在“Filter name”編輯框內輸入過濾器名字“sohu”,在“Filter string”編輯框內輸入過濾規則“host 10.1.197.162 ”,然後單擊“New”按鈕即可,如圖2所示。
在Ethereal中使用的過濾規則和Tcpdump幾乎完全一致,這是因為兩者都基於pcap庫的緣故。Ethereal能夠同時維護很多個過濾器。網絡管理員可以根據實際需要選用不同的過濾器,這在很多情況下是非常有用的。例如,一個過濾器可能用於截獲兩個主機間的數據包,而另一個則可能用於截獲ICMP包來診斷網絡故障
圖3 圖3
當所有需要的過濾器都創建好後,單擊“Save”按鈕保存創建的過濾器,然後單擊“Close”按鈕來關閉“Edit CaptureFilter List”對話框。要將過濾器應用於嗅探過程,需要在截獲數據包之前或之後指定過濾器。要為嗅探過程指定過濾器,並開始截獲數據包,可以單擊“Capture”選單,選擇“Start...”選單項,打開“Capture Options”對話框,單擊該對話框中的“Filter:”按鈕,然後選擇要使用的過濾器,如圖3所示。
注意在“Capture Options”對話框中,“Update list of packets in real time”複選框被選中了。這樣可以使每個數據包在被截獲時就實時顯示出來,而不是在嗅探過程結束之後才顯示所有截獲的數據包。
在選擇了所需要的過濾器後,單擊“OK”按鈕,整個嗅探過程就開始了。Ethereal可以實時顯示截獲的數據包,因此能夠幫助網絡管理員及時瞭解網絡的運行狀況,從而使其對網絡性能和流量能有一個比較準確的把握。
用Ethereal分析數據包
Ethereal和其它的圖形化嗅探器使用基本類似的界面,整個窗口被分成三個部分:最上面為數據包列表,用來顯示截獲的每個數據包的總結性信息;中間為協議樹,用來顯示選定的數據包所屬的協議信息;最下邊是以十六進制形式表示的數據包內容,用來顯示數據包在物理層上傳輸時的最終形式。
圖4 圖4
使用Ethereal可以很方便地對截獲的數據包進行分析,包括該數據包的源地址、目的地址、所屬協議等。
圖4是在Ethereal中對一個HTTP數據包進行分析時的情形。
在圖4最上邊的數據包列表中,顯示了被截獲的數據包的基本信息。從圖4中可以看出,當前選中數據包的源地址是10.1.197.162,目的地址為61.135.150.65,該數據包所屬的協議是超文本傳輸協議(HTTP)。更詳細的信息表明該數據包中含有一個HTTP的GET命令,要求下載starrtlog.js文件到客户端的Web瀏覽器。
圖4中間是協議樹,通過協議樹可以得到被截獲的數據包的更多信息,如主機MAC地址(Ethernet II)、IP地址(Internet Protocol)、TCP端口號(Transmission Control Protocol),以及HTTP協議的具體內容(Hypertext Trnasfer Protocol)。通過擴展協議樹中的相應節點,可以得到該數據包中攜帶的更詳盡的信息。
圖4最下邊是以十六制顯示的數據包的具體內容,這是被截獲的數據包在物理媒體上傳輸時的最終形式,當在協議樹中選中某行時,與其對應的十六進制代碼同樣會被選中,這樣就可以很方便地對各種協議的數據包進行分析。
Ethereal提供的圖形化用户界面非常友好,管理員可以很方便地查看到每個數據包的詳細信息,協議樹及其對應的十六進制表示對分析每個數據包的目的很有幫助,綜合使用Ethereal和Tcpdump能夠基本滿足網絡管理員在Linux系統上的所有嗅探要示。
用EtherApe查看網絡流量
EtherApe也是一個圖形化的網絡嗅探器。與Ehtereal不同,EtherApe通過驗證主機與主機之間的鏈接,圖形化地顯示網絡目前所處的狀態。EtherApe使用不同顏色的連線來表示位於不同主機之間的連接,而連線的粗細則表明主機間數據流量的大小。這些信息都是實時變化的,因而能夠協助管理員隨時瞭解到網絡中各部分流量的變化情況。
EtherApe的安裝
EhterApe支持Ethernet、FDDI和Token Ring等多種網絡,能夠實時地從網絡或文件中讀取網絡流量的變化情況。此外它還可以將網絡流量信息保存下來,以便在之後需要時再顯示出來。
在網站上可以下載到最新的EtherApe源碼包。
下面以Ethereal 0.8.2為例,講述如何安裝EtherApe(使用的操作系統是RedHat 8.0)。
首先下載最新的源碼包並將其解壓縮,代碼如下:
# cp etherape-0.8.2.tar.gz /usr/local/src/
# cd /usr/local/src/
# tar xzvf etherape-0.8.2.tar.gz
EtherApe使用的是GNOME這一圖形用户接口庫。與Ethereal和Tcpdump一樣,它也使用pcap庫(libpcap)對網絡上傳輸的數據包進行截獲和過濾。在編譯EtherApe之前,應先確定所需的這些庫已經安裝好,因為這是編譯EtherApe時所必需的。如果這些庫已經安裝,就可以執行下面的命令來編譯並安裝EtherApe:
# cd etherape-0.8.2
# ./configure
# make
# make install
用EtherApe分析網絡流量
圖5 圖5
當編譯並安裝好EtherApe後,就可以執行“etherape”命令來啓動EtherApe。當用EtherApe截獲在網絡上傳輸的數據包時,也需要先為其指定過濾規則,否則EthreApe將捕獲網絡中的所有數據包。單擊工具欄上的“Pref.”按鈕,打開“Preferences”對話框,在該對話框中的“Capture”屬性頁中,可以找到用於設置過濾規則的“Capture filter”下拉框。由於採用的都是pcap庫,因此EtherApe過濾規則的設置與Tcpdump和Ethereal是相同的。
設置好過濾規則後,單擊工具欄上的“Start”按鈕,就可以開始對網絡中感興趣的數據包進行嗅探。EhterApe圖形化地顯
示網絡流量,圖5是當EtherApe處於Ethernet模式下時的網絡流量圖。
圖6 圖6
EtherApe提供了Token Ring、FDDI、Ethernet、IP和TCP五種監聽模式。當處於Ethernet模式下時,EtherApe會截獲所有符合過濾規則的以太網數據包,但有時網絡管理員可能只對IP數據包感興趣,這時可以將EtherApe切換到IP模式。
單擊“Capture”菜單,選擇“Mode”菜單項,然後再選擇相應的模式,就可以完成模式之間的切換。
圖6是當EhterApe處於IP模式下時的網絡流量圖。
EtherApe能夠以圖形的方式顯示網絡流量。用户看到的是一個很直觀的用於表示網絡上各主機間流量大小的圖,而不是單個的數據包,因而更容易從整體上把握整個網絡的運行狀況,在定位網絡故障時相對來説也變得更加容易。

ethereal端口號

TCP協議支持
協議名稱 TCP端口號 協議名稱解釋
ACAP 674
AIM 5190
BEEP 10288
CAST 4224
CMP 829
COPS 3288
PKTCABLE_COPS 2126
PKTCABLE_MM_COPS 3918
DAAP 3689
DHCPFO 519
DIAMETER 3868
DISTCC 3632
DLSW 2065
NP 20000
NS 53
DNS 5353
DSI 548
FTPDATA 20
FTP 21
GIFT 1213
CS 1720
HTTP 80
PROXY_HTTP 3128
PROXY_ADMIN_HTTP 3132
HKP 11371
DAAP 3689
SSDP 1900
IB 3050
ICAP 1344
IMAP 143
IRC 6667
ISAKMP 500
JABBER 5222
KERBEROS 88
LAPLINK 1547
LDAP 389
GLOBALCAT_LDAP 3268
LDP 646
PRINTER 515
MBTCP 502
MSNMS 1863
MSRP 0
MySQL 3306
NBSS 139
CIFS 445
NCP 524
NDMP 10000
PA 0x0d44
BROKER 0x0bc6
SRS 0x0bca
ENS 0x0bc8
RMS 0x0bcb
NOTIFY_LISTENER 0x0bc9
NETSYNC 5253
NNTP 119
NTP 123
POP 110
PPTP 1723
PVFS2 3334
RMI 1099
RSH 514
RSYNC 873
RTSP 554
SIP 5060
SKINNY 2000
SLSK_1 2234
SLSK_2 5534
SLSK_3 2240
SMRSE 4321
SMTP 25
SNMP 161
SNMP_TRAP 162
SMUX 199
SOCKS 1080
SRVLOC 427
SSH 22
SSL 443
SSL_LDAP 636
SSL_IMAP 993
SSL_POP 995
STUN 3478
TACACS 49
TELNET 23
TNS 1521
TPKT 102
X11 6000
X11_2 6001
X11_3 6002
XOT 1998
YHOO 5050
YMSG 23
YMSG_2 25
YMSG_3 5050
ZEBRA 2600
NINEPORT 564
ajp13 8009
ax4000 3357
BGP 179
COPS 3288
DCM 104
DHCPFO 519 desegmentation of DHCP failover over TCP
distcc 3632
ECHO 7
edonkey 4661/4662/4663
ENIP_ENCAP_PORT 44818 EtherNet/IP located on port 44818
etheric 1806/10002
giop 0
GNUTELLA 6346
http_alternate_tcp_port 未知
Ipdc 6668
ISNS 3205
MSMMS 1755
msdp 639
MSNMS 1863
msrp 0
Pgsq
Rlogin 513
Rpc 111
rtsp 未知
Sigcomp 5555/6666
synergy 24800
tds 1433/2433
uma 0
vnc 5901
一共129=94+35種
協議名稱 UDP端口號 協議名稱解釋
3GA11 699 3com Network Jack
5264:Packets to Managementstation
5265:Packets to Switch
ACTRACE 2428 Port used for Mobile IP based Tunneling Protocol (A11)
T_AODV 654
ARMAGETRONAD 4534
MASTER 4533
ADP 8200
PIM_RP_DISC 496
BFD_CONTROL 3784
BOOTPS 67
BOOTPC 68
PHA 8116
CUPS 631
DDTP 1052
DHCPV6_DOWNSTREAM 546
DHCPV6_UPSTREAM 547
DLSW 2067
DNP 20000
DNS 53
MDNS 5353
RAS1 1718
RAS2 1719
HSRP 1985
SSDP 1900
IAPP 2313
ICP 3130
ICQ 4000
IPX 213
ISAKMP 500
KERBEROS 88
KRB4 750
KPASSWD 464
L2TP 1701
LAPLINK 1547
CLDAP 389
LDP 646
LLC1 12000
LLC2 12001
LLC3 12002
LLC4 12003
LLC5 12004
LMP_DEFAULT 701
MIP 434
MPLS_ECHO 3503
MSPROXY 1745
NBNS 137
NBDGM 138
NCP 524
NETFLOW 2055
TPCP 3121
NTP 123
OLSR 698
RADIUS 1645
RADIUS_NEW 1812
RADACCT 1646
RADACCT_NEW 1813
RIP 520
RIPNG 521
RMCP 623
RMCP_SECURE 664
RX_LOW 7000
RX_HIGH 7009
RX_AFS_BACKUPS 7021
SAP 9875
SEBEK 1101
SFLOW 6343
SIP 5060
SLIMP3_V1 1069
SLIMP3_V2 3483
SNMP 161
SNMP_TRAP 162
SRVLOC 427
STUN 3478
SYSLOG 514
TACACS 49
TEREDO 3544
TFTP 69
TIME 37
TIMED 525
TZSP 0x9090
VINES 573
WSP 9200
WTP_WSP 9201
WTLS_WSP 9202
WTLS_WTP_WSP 9203
WSP_PUSH 2948
WTLS_WSP_PUSH 2949
WCCP 2048
WHO 513
XDMCP 177
XYPLEX 173
NJACK1 5264
NJACK2 5265
ASAP 3863
AX4000 3357
bvlc 0xBAC0
CPFI 5000
cpfi_ttot 5001
dis 3000
ECHO 7
edonkey 4665
edonkey 4672
ENIP_ENCAP 44818
ENIP_IO 2222
IAX2 4569
udpencap 4500
IPVS_SYNCD 8848
ISNS 3205
KINK 57203
lwapp 12220/12222/12223
manolito 41170
MSMMS 1755
udp_encap_ucast_port 3055 Udp port for UDP encapsulation
udp_encap_mcast_port 3056
PKTC_PORT 1293
PKTC_MTAFQDN_PORT 2246
EVENT_PORT_PTP 319
GENERAL_PORT_PTP 320
radius 1645/1646/1812/1813
Rpc 111
SigCompUDPPort1 5555
SigCompUDPPort2 6666
Rdt 6970
rmt-alc 未知 從配置文件中讀取
SSCOP 未知 從配置文件中讀取
T38 6004
quakeworldServerPort 27500
quakeServerPort 26000
quake2ServerPort 27910
quake3_server_port 27960-27963
quake3_master_port 27965-27968
一共137=90+47種
IP協議支持
協議名稱 IP端口號 協議名稱解釋
AX4000 173 AX/4000 Testblock - non IANA
TP 29 ISO Transport Protocol Class 4
DCCP 33 Sequential Exchange Protocol(和標準的不一樣)
EIGRP 88
EtherIP 97 Ethernet-within-IP Encapsulation
GRE 47 General Routing Encapsulation
ICMPV6 58 ICMP for IPv6
IGMP 2
IGRP 9 any private interior gateway(used by Cisco for their IGRP)
IPIP 4 IP in IP (encapsulation)
ICMP 1
AH 51 Authentication Header
ESP 50 Encap Security Payload
IPCOMP 108 IP Payload Compression Protocol
IPV6 41
L2TP 115 Layer Two Tunneling Protocol
MIPV6_OLD 62 CFTP 這個和標準不一致――Mobile IPv6
MIPV6 135 Mobility Header ―― Mobile IPv6
NCS_HEARTBEAT 224 Novell NCS Heartbeat -
http://support.novell.com/cgi-bin/search/searchtid.cgi?/10071158.htm
NARP 54 NBMA Address resolution protocol - RFC1735
OSPF 89
PGM 113 PGM Reliable Transport Protocol
PIM 103 Protocol Independent Multicast
RSVP 46
SCTP 132 Stream Control Transmission Protocol
TCP 6
UDP 17
UDPLITE 136 UDPLite
VINES 83 Vines over raw IP
VRRP 112 Virtual Router Redundancy Protocol
一共30種
參考資料