簡體   English   中英

如何檢查遠程udp端口

[英]how to check a remote udp port

我想使用UDPClient檢查到遠程計算機的連接。 聽說如果發生故障,它將返回一個icmp數據包。 我們怎樣才能抓住它? 如何檢查遠程機器?

            UdpClient receivingUdpClient = new UdpClient();
            receivingUdpClient.Connect(IPAddress.Parse("10.2.2.13"), 80);

            Byte[] sendBytes = Encoding.ASCII.GetBytes("0");
            Var b=receivingUdpClient.Send(sendBytes, sendBytes.Length);

使用UDP,沒有確定的方式來知道數據包是否到達其目的地(與TCP比較,TCP會發送ack數據包以使發送方知道其數據包已被接收)。

確實,在某些情況下會發送ICMP數據包 ,但是如果該數據包在路由路徑中的某個位置被過濾掉(或只是丟棄了)怎么辦? 據我了解,例如,大多數家用路由器都已預先配置為將所有ICMP丟棄在外部端口上。

您可以調查正在使用的協議是否具有PING數據包(或某些等效的無操作數據包,或者是否已創建協議-添加它),而不是依賴ICMP數據包,並將其與超時/重試邏輯一起使用驗證服務是否可用。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM