在线看毛片视频-国产免费av在线-欧美日韩一区二区三区-国产成人无码av在线播放无广告-亚洲人va欧美va人人爽-国产第一草草-西班牙黄色片-四虎在线网站8848-最新av片免费网站入口-东京热无码中文字幕av专区-日本大人吃奶视频xxxx-欧美精品一区二区三区四区五区-国产片天天弄-国产免费内射又粗又爽密桃视频-欧美爱爱网站-日韩v欧美

當前位置:雨林木風下載站 > 技術開發教程 > 詳細頁面

用Delphi完成專線狀態的探測

用Delphi完成專線狀態的探測

更新時間:2020-01-14 文章作者:未知 信息來源:網絡 閱讀次數:

范智鑫 王毅燕

隨著計算機用戶的增多,計算機網絡越來越復雜,如何進行實時的網絡檢測成為網管人員關心的問題。實時監測可以在最早的時間內發現問題,避免網絡長時間繼線。本文介紹一種利用Delphi編寫應用程序實現專線狀態探測的方法。
實現原理
許多人經常利用Windows中的兩條DOS命令(Ping和Tracert)來測試網絡狀態,其原理是通過向探測的節點端口發送數據包請求,然后從該端口是否應答來判斷網絡是否暢通。其實,在Windows的System目錄下有一個Icmp.dll文件,該動態鏈接庫提供了ICMP協議的所有功能,通過對該動態鏈接庫的調用可以完成發送請求和接收應答。因此,可以利用該動態鏈接庫實現專線狀態的探測。
Icmp.dll文件內的主要調用函數如下:
● IcmpCreateFile: 打開一個句柄,通過該句柄發送ICMP的請求報文;
● IcmpCloseHandle: 關閉通過IcmpCreateFile函數打開的句柄;
● IcmpSendEcho:通過打開的句柄發送ICMP請求,在超時或接收到應答報文后返回。
編程實現
首先構造節點庫(如圖1所示),然后通過調用ICMP協議,向測試端口發送請求,如果接收到該端口的應答,則狀態為“正常”,否則,狀態為“中斷”。

圖1
1. 初始化WinSock,調入Icmp.dll庫
var
 wsadata: TWSAData;
begin
 if WSAStartup($101,wsadata) <> 0 then begin
ShowMessage(‘Error initialising WinSock’);
  halt;
 end;
 hICMPlib ∶= loadlibrary(icmpDLL);
 if hICMPlib <> null then begin
  @ICMPCreateFile ∶= GetProcAddress(hICMPlib, ‘IcmpCreateFile’);
  @IcmpCloseHandle∶= GetProcAddress(hICMPlib, ‘IcmpCloseHandle’);
@IcmpSendEcho∶= GetProcAddress(hICMPlib,
‘IcmpSendEcho’);
if (@ICMPCreateFile = Nil) or (@IcmpCloseHandle = Nil) or (@IcmpSendEcho=Nil) then begin
ShowMessage(‘Error loading dll functions’);
halt;
  end;
  hICMP ∶= IcmpCreateFile;
  if hICMP=INVALID_HANDLE_VALUE then begin
ShowMessage(‘Unable to get ping handle’);
  halt;
  end;
 end;
 else begin
ShowMessage(‘Unable to register’+ icmpDLL);
halt;
 end;
end;
2. 使用定時器啟動探測
在測試中,如果端口狀態正常,則net_stat=0;狀態異常則net_stat=1,并顯示“中斷”,系統響鈴報警。對節點表中所有節點進行測試的主要代碼如下:
//取得欲測試端口的IP地址
net_ip∶=Table1. FieldByName(‘對端IP’). asstring;
//調用端口測試
Test(Sender);
if net_stat=0 then
 begin
  Table1. FieldByName(‘狀態’). asstring∶=‘中斷’;
//端口異常,則net=1
if net=0 then net∶=1;
 end
else Table1. FieldByName(‘狀態’). asstring∶=‘正常’;
//整表測試后,如有異常的端口,則10次響鈴報警
if net=1 then FOR I∶=1 TO 10 DO PlaySound(‘RINGIN’, 0, SND_RESOURCE);
3. 探測指定的端口:Test(Sender)
const
Size = 56;
TimeOut = 3000;
var
Address: DWord;
HostName, HostIP: String;
Phe: PHostEnt;
BufferSize, nPkts: Integer;
pReqData, pData: Pointer;
pIPE: PIcmpEchoReply;
IPOpt: TIPOptionInformation;
begin
//將存儲字符串的地址轉化為標準的網絡IP地址
Address ∶= inet_addr(PChar(net_ip));
//取得測試端口的句柄
Phe ∶= GetHostByAddr(@Address, 4, PF_INET);
// 設定一個緩沖區,填充指定數據作為待發送的數據包
BufferSize ∶= SizeOf(TICMPEchoReply) + Size;
GetMem(pReqData, Size);
GetMem(pData, Size);
GetMem(pIPE, BufferSize);
FillChar(pReqData^, Size, $AA);
pIPE^.Data ∶= pData;
FillChar(IPOpt, SizeOf(IPOpt), 0);
IPOpt.TTL ∶= 64;
 //通過打開的句柄,發送ICMP數據包請求,在超時或接收應答報文后返回
NPkts ∶= IcmpSendEcho(hICMP, Address, pReqData, Size, @IPOpt, pIPE, BufferSize, TimeOut);
//根據是否從測試端口返回應答報文,判斷網絡狀態
 if NPkts = 0 then net_stat∶=0
else begin
HostIP ∶= StrPas(inet_ntoa(TInAddr(pIPE^.Address)));
if trim(HostIP)=trim(net_ip) then net_stat∶=1
else net_stat∶=0;
end;
//釋放變量
FreeMem(pIPE);
FreeMem(pData);
FreeMem
(pReqData);
end;
4. 關閉探測程序
//釋放ICMP
IcmpCloseHandle(hICMP);
FreeLibrary(hICMPlib);
//釋放WinSock
if WSACleanup <> 0 then ShowMessage(‘Error freeing WinSock’);
完善程序
上述程序僅提供了基本的網絡探測方法,為了更好地體現網絡狀態和處理情況,可以對此程序進一步完善:
1. 再建兩個表:
● 故障記錄和處理表: 在探測中將故障節點記錄保存,并記錄故障處理情況;
● 探測間隔表:靈活設置探測時間間隔。
2. 添加節點庫維護模塊。
3. 對于探測模塊的顯示進行改造,使故障節點呈現報警色(如紅色)。 

溫馨提示:喜歡本站的話,請收藏一下本站!

本類教程下載

系統下載排行

在线看毛片视频-国产免费av在线-欧美日韩一区二区三区-国产成人无码av在线播放无广告-亚洲人va欧美va人人爽-国产第一草草-西班牙黄色片-四虎在线网站8848-最新av片免费网站入口-东京热无码中文字幕av专区-日本大人吃奶视频xxxx-欧美精品一区二区三区四区五区-国产片天天弄-国产免费内射又粗又爽密桃视频-欧美爱爱网站-日韩v欧美
  • <li id="86scu"><menu id="86scu"></menu></li>
    <li id="86scu"></li>
    <button id="86scu"></button>
  • <s id="86scu"></s><button id="86scu"><menu id="86scu"></menu></button>
  • www.cao超碰| 国产一区二区视频免费在线观看| 久久久久久久久久久视频| 亚洲一级片免费观看| 男生操女生视频在线观看| 欧美国产日韩在线播放| 91看片就是不一样| 青青草成人免费在线视频| 美女扒开大腿让男人桶| 国产日韩欧美精品在线观看| 免费的av在线| 免费看日本黄色| 成人网站免费观看入口| 国产h视频在线播放| 日日碰狠狠添天天爽超碰97| 毛片在线视频播放| 99精品免费在线观看| 99视频免费播放| 性生生活大片免费看视频| 91丨九色丨蝌蚪| 蜜臀av.com| 妺妺窝人体色www在线小说| 欧美牲交a欧美牲交| 九九九在线观看视频| 国产高清av片| 一二三四视频社区在线| 久久久久久久久久久久久久国产| 国产三级三级看三级| 中国老女人av| 大陆极品少妇内射aaaaa| 农村妇女精品一二区| 欧美日韩一区二区三区69堂| 97超碰在线视| 国产一伦一伦一伦| xxxx18hd亚洲hd捆绑| www.99av.com| 免费的一级黄色片| 日本人视频jizz页码69| 午夜啪啪福利视频| 手机看片福利盒子久久| ijzzijzzij亚洲大全| 777久久久精品一区二区三区| 最新天堂在线视频| 男人的天堂狠狠干| √天堂资源在线| 韩国日本在线视频| 特级西西444| 亚洲午夜精品一区| 免费日韩视频在线观看| wwwjizzjizzcom| 捷克做爰xxxⅹ性视频| 少妇人妻互换不带套| 国产一级做a爰片久久毛片男| 污片在线免费看| 日韩免费毛片视频| 欧美国产亚洲一区| 青青在线免费观看| 日本三日本三级少妇三级66| 黄色三级视频在线| 欧美伦理片在线看| 国产在线观看福利| 乱妇乱女熟妇熟女网站| 国产a级黄色大片| 乱子伦一区二区| 最新中文字幕久久| 佐佐木明希av| 手机看片日韩国产| 在线观看免费黄色片| 做爰高潮hd色即是空| 黄色片免费网址| 国产探花在线观看视频| 久久久一二三四| 粉嫩av一区二区三区天美传媒 | 日韩高清在线一区二区| 中文字幕资源在线观看| 日本不卡一区在线| 三级黄色片播放| 手机看片日韩国产| 日韩精品在线视频免费观看| 国产 日韩 欧美在线| 国产精品宾馆在线精品酒店| www.xxx亚洲| 日韩av自拍偷拍| 日韩精品第1页| 自拍日韩亚洲一区在线| 色诱视频在线观看| 中文字幕线观看| 天堂а√在线中文在线| 俄罗斯av网站| 毛片毛片毛片毛| 国产免费xxx| 国产成人亚洲精品无码h在线| 国产欧美在线一区| www.国产福利| 国产 欧美 日韩 一区| 免费在线观看的毛片| 中文字幕 欧美日韩| 99热亚洲精品| 婷婷激情小说网| 久久无码高潮喷水| 无套内谢丰满少妇中文字幕| 九九爱精品视频| 国产精品jizz在线观看老狼| 青青青青草视频| 九一精品久久久| 黑森林福利视频导航| 日本一道在线观看| 日韩一级免费片| 国产一区二区网| 4444在线观看| 中文字幕 日韩 欧美| 久久久噜噜噜www成人网| 国产免费一区二区三区四在线播放| 欧美s码亚洲码精品m码| 亚洲精品国产suv一区88| 亚洲色图 在线视频| 精品无码国模私拍视频| 国产经典久久久| 手机视频在线观看| 国产性xxxx18免费观看视频| 91免费国产精品| 天天爱天天做天天操| 五月婷婷之婷婷| 亚洲色图 在线视频| www日韩视频| 欧美一级黄色片视频| 九色在线视频观看| 日韩小视频在线播放| 成人一区二区av| 国产高潮呻吟久久久| 福利视频999| 中文av字幕在线观看| 亚洲综合20p| 91热视频在线观看| 国产成年人在线观看| www.-级毛片线天内射视视| 一道本在线观看视频| www.黄色网址.com| 欧美黄色免费网址| 国产男女免费视频| 日韩精品视频久久| 最近中文字幕一区二区| 亚州精品一二三区| 亚洲视频一二三四| 91视频福利网| 国产精品一线二线三线| 国产一二三在线视频| 欧美日韩在线视频一区二区三区| 99热成人精品热久久66| 国产视频1区2区3区| 99re99热| 91精品91久久久中77777老牛| 久草在在线视频| 久久精品国产露脸对白| bt天堂新版中文在线地址| 春日野结衣av| 91精品999| 久久精品xxx| 超碰超碰在线观看| 99国产精品白浆在线观看免费| 你真棒插曲来救救我在线观看| 狠狠热免费视频| 欧洲金发美女大战黑人| 成人羞羞国产免费网站| 久久精品国产露脸对白| 无码专区aaaaaa免费视频| 国产三级日本三级在线播放| 日本福利视频导航| 国产精品宾馆在线精品酒店| www.精品在线| 18禁网站免费无遮挡无码中文| 日韩av片网站| 给我免费播放片在线观看| 成年网站在线播放| 欧美人与动牲交xxxxbbbb| 999精品视频在线| 草草久久久无码国产专区| 在线免费黄色小视频| 三级a在线观看| 国产欧美在线一区| www.国产在线视频| 亚洲一区二区偷拍| 99热这里只有精品在线播放| 分分操这里只有精品| 熟女视频一区二区三区| 美女在线视频一区二区| 精品免费国产一区二区| 999在线观看视频| 少妇高潮大叫好爽喷水| 想看黄色一级片| 在线观看免费不卡av| 欧美一级黄色影院| 国产熟女高潮视频| 免费观看精品视频| 少妇高潮喷水久久久久久久久久| 天天想你在线观看完整版电影免费| 日本超碰在线观看| 中文字幕第38页| 欧美日韩在线观看不卡| 国产区二区三区|