筆者單位各部門分布在不同的城市,相距較遠(yuǎn)。為方便部門之間文書傳送,并確保傳輸過程安全保密,總部近期下發(fā)了文件收發(fā)系統(tǒng),用于實時的文件收發(fā)。
文件收發(fā)系統(tǒng)采用CS結(jié)構(gòu),總部設(shè)服務(wù)器,各分部門安裝客戶端。文件發(fā)送后,對方可以實時收到來文信息,并進行回執(zhí)和簽收。發(fā)送方也可以實時看到回執(zhí),以確定對方已收到文件。系統(tǒng)運行過程中,文件收發(fā)服務(wù)采用指定端口,因此總部下發(fā)了防火墻配置表,規(guī)范需要打開的端口列表。
在文件收發(fā)系統(tǒng)調(diào)試過程中,按要求安裝好軟件,并配置好防火墻。在進行文件收發(fā)時發(fā)現(xiàn),客戶端之間可以收到對方發(fā)來的文件,但收到文件后,進行確認(rèn)回執(zhí)時,發(fā)件方發(fā)文狀態(tài)并未顯示接收確認(rèn),只是顯示已發(fā)送到對端。以為是系統(tǒng)安裝或配置的問題,于是進行關(guān)閉系統(tǒng)防火墻、重啟各種相關(guān)服務(wù)操作,又重做了幾遍系統(tǒng),問題依然存在。
經(jīng)詢問總部技術(shù)人員,解釋是問題可能出在網(wǎng)絡(luò)中防火墻的配置上。確認(rèn)信息可能被防火墻攔截,沒有傳送到發(fā)件方。將防火墻暫時處于全通狀態(tài)進行回執(zhí)收發(fā)測試,確實可以收到確認(rèn)信息,發(fā)文狀態(tài)變?yōu)楹炇铡5偛考夹g(shù)人員只知道文件收發(fā)使用的端口號,不能確定回執(zhí)信息使用的端口號。
為了找出回執(zhí)信息發(fā)送使用的端口號,我們在一臺電腦上安裝服務(wù)器,用兩臺電腦模擬兩個部門,分別安裝客戶端,并在其中一臺電腦上安裝Wireshark抓包軟件進行報文分析。在抓取了兩臺電腦相互發(fā)文、收文、回執(zhí)確認(rèn)的數(shù)據(jù)包后進行分析,發(fā)現(xiàn)發(fā)文和收文服務(wù)所用端口號與下發(fā)的端口表相吻合,并從中找出了回執(zhí)信息數(shù)據(jù)報文,查出傳輸層TCP協(xié)議所用的端口號。在各用戶端的防火墻上增加開放此端口的規(guī)則,并保存應(yīng)用,再次進行測試,故障排除。
本次故障排除看似簡單,卻給了我們很多啟示。在信息系統(tǒng)運維管理和網(wǎng)絡(luò)維護過程中,經(jīng)常會遇到一些表面看似軟件問題,而實則是網(wǎng)絡(luò)問題的事情。在重啟軟件的各種服務(wù)不能解決問題的情況下,可以從網(wǎng)絡(luò)傳輸方面作為切入點,并利用適當(dāng)?shù)木W(wǎng)絡(luò)分析工具進行輔助判斷,從而排除故障。網(wǎng)絡(luò)故障表現(xiàn)形式多種多樣,但很多根本原因都可以在IP報文中找到答案。充分利用好 Wireshark、Sniffer等網(wǎng)絡(luò)抓包軟件,可以給我們提供很多查找問題的線索、解決問題的思路,從而更好、更快的解決網(wǎng)絡(luò)問題。