October 8,2007
一刀切!用自由軟體 Wireshark 分析網路封包,終結踢皮球大戰(誤)
(聲明:限於個人經驗,我用公司的產品 NETeXPERT 來舉例,寫作本文是個人行為,不代表我的公司)
(Disclaimer: This blog entry represents my personal view. Though it uses NETeXPERT as an example, it does not represent the view of my employer - OSI)
NETeXPERT 既然說自己是 Manager of Managers (網管系統的網管系統),在告警管理 (Fault Management) 方面,彙整各種 NE (Network Equipment), EMS(Element Management System), NMS(Network Management System), OSS(Operation Support System) 的告警,當然不是問題只是錢多錢少的問題囉。
但是,身為面對客戶的工程師,實務上我們還是會遇到各種各樣的狀況,例如這次跟 E廠商 之間界接的問題。
其實跟 E廠商 的數套告警系統已經界接很久了,不過最近客戶突然發現,其中一套有一個功能不正常,因此希望我們兩家廠商能夠查一下,到底怎麼回事。
從客戶的觀點,這次的問題,可以用棒球來做比方,好像一個「消失的魔球」。就是,如果 E廠商 "投球", 我們 NETeXPERT 收得到並且能夠正確顯示;反過來如果我們"投球", E廠商 那邊無法顯示!
嗯,他們跟我們都跟客戶回報,相關的軟體、設定,都很久沒更動了。更怪的是,我們和他們其實界接了數套告警系統,就只有這一套有這個狀況。
好吧,我們這套系統是跑在 SUN Solaris 上面的,所以我執行 snoop 這個指令來抓取跟 E廠商 之間的網路封包:(假設對方的 ip 是 aaa.bbb.ccc.ddd)
`/usr/sbin/snoop -o /tmp/filename.cap host aaa.bbb.ccc.ddd`
接著我從我們這一端,"投球"過去。如果一切正常,我們應該會透過網路送出相關的封包,他們收到之後應該要顯示在他們的系統上。
然後我把上面那個 .cap 檔下載(ftp)回來,在我的筆電上面用 Wireshark 開啟,看看兩台機器之間的網路封包到底都是些什麼東東:

上面那張圖其實開了兩個 Wireshark ,底下那個開啟的 .cap 檔是客戶登入到 E廠商 的機器(也是 SUN Solaris),在那邊執行 snoop 所抓到的,跟我們機器之間的封包。妳可以看到,我用紅色框出來的,相同的封包(只有 來源 和 目的 ip 反過來兩個封包的來源 ip 一樣,目的 ip 一樣)。
好囉,既然我們丟過去的 GIOP 封包他們都收到了,還回覆 No Exception ,那麼他們的系統無法顯示,也許不是我們的問題囉。
雖然最後的答案還沒找到,不過現在輪到 E廠商 的工程師們要頭痛一下啦 :p 讓我大聲的說:
Next question!
==
其實沒什麼好得意的,我手上各種各樣的 trouble ticket 還有一堆 Orz ......
(Disclaimer: This blog entry represents my personal view. Though it uses NETeXPERT as an example, it does not represent the view of my employer - OSI)
NETeXPERT 既然說自己是 Manager of Managers (網管系統的網管系統),在告警管理 (Fault Management) 方面,彙整各種 NE (Network Equipment), EMS(Element Management System), NMS(Network Management System), OSS(Operation Support System) 的告警,當然
但是,身為面對客戶的工程師,實務上我們還是會遇到各種各樣的狀況,例如這次跟 E廠商 之間界接的問題。
其實跟 E廠商 的數套告警系統已經界接很久了,不過最近客戶突然發現,其中一套有一個功能不正常,因此希望我們兩家廠商能夠查一下,到底怎麼回事。
從客戶的觀點,這次的問題,可以用棒球來做比方,好像一個「消失的魔球」。就是,如果 E廠商 "投球", 我們 NETeXPERT 收得到並且能夠正確顯示;反過來如果我們"投球", E廠商 那邊無法顯示!
嗯,他們跟我們都跟客戶回報,相關的軟體、設定,都很久沒更動了。更怪的是,我們和他們其實界接了數套告警系統,就只有這一套有這個狀況。
好吧,我們這套系統是跑在 SUN Solaris 上面的,所以我執行 snoop 這個指令來抓取跟 E廠商 之間的網路封包:(假設對方的 ip 是 aaa.bbb.ccc.ddd)
`/usr/sbin/snoop -o /tmp/filename.cap host aaa.bbb.ccc.ddd`
接著我從我們這一端,"投球"過去。如果一切正常,我們應該會透過網路送出相關的封包,他們收到之後應該要顯示在他們的系統上。
然後我把上面那個 .cap 檔下載(ftp)回來,在我的筆電上面用 Wireshark 開啟,看看兩台機器之間的網路封包到底都是些什麼東東:

上面那張圖其實開了兩個 Wireshark ,底下那個開啟的 .cap 檔是客戶登入到 E廠商 的機器(也是 SUN Solaris),在那邊執行 snoop 所抓到的,跟我們機器之間的封包。妳可以看到,我用紅色框出來的,相同的封包(
好囉,既然我們丟過去的 GIOP 封包他們都收到了,還回覆 No Exception ,那麼他們的系統無法顯示,也許不是我們的問題囉。
雖然最後的答案還沒找到,不過現在輪到 E廠商 的工程師們要頭痛一下啦 :p 讓我大聲的說:
Next question!
==
其實沒什麼好得意的,我手上各種各樣的 trouble ticket 還有一堆 Orz ......
引用URL
http://cgi.blog.roodo.com/trackback/4264887
回應文章 
有shoot到trouble的 trouble shooting感覺還真好呢!
Posted by ned
at October 9,2007 09:54
為什麼 TCP CHECKSUM INCORRECT ?
這個封包不會被當成 bad 嗎 ?
這個封包不會被當成 bad 嗎 ?
Posted by Jerry
at October 9,2007 18:37
ned,
還好啦,我家兩個小鬼的奶粉錢就是這樣來的咩。
Jerry,
在我的情境裡:不會。
在我找時間回一篇完整的解釋之前,請參考 Wireshark FAQ
Q 11.1: Why am I seeing lots of packets with incorrect TCP checksums?
還好啦,我家兩個小鬼的奶粉錢就是這樣來的咩。
Jerry,
在我的情境裡:不會。
在我找時間回一篇完整的解釋之前,請參考 Wireshark FAQ
Q 11.1: Why am I seeing lots of packets with incorrect TCP checksums?
Posted by PowerOp
at October 12,2007 12:47

"...相同的封包(只有 來源 和 目的 ip 反過來)..."
小小的問題:
相同的封包,來源 和 目的 ip 應該不會反過來,反過來應該就不是相同封包。
從您的圖來看也是這樣,兩個封包來源都是10.76.2x.x, 目的都是10.76.1x.x
Posted by jjjj
at January 14,2008 15:35
jjjj,
感謝指正,已經改為「兩個封包的來源 ip 一樣,目的 ip 一樣」
==
話說,你的留言 ip 位址來自 E 廠商耶,該不會你就是 D 工程師吧? XD
Posted by 毛骨悚然的PowerOp
at January 14,2008 20:24