![](/img/trans.png)
[英]C# How to Access local network (192.168.x.x) within Docker containers
[英]C# Program Listening on 0.0.0.0 but not 192.168.x.x
我有一個用 C# 制作的軟件,它在端口 5000 上打開一個偵聽器來偵聽網絡上的傳入流量。 為了測試以確保它正常工作,我有一個包含以下代碼集的程序:
Int32 port = 11000;
IPAddress localAddr = IPAddress.Parse("192.168.x.x")
client = new TcpClient();
client.Connect(localAddr, port);
根據我的 netstat -an 我的監聽程序正在監聽:
0.0.0.0:11000 * LISTENING
它沒有顯示在 192.168.XX 上收聽
當我運行測試程序時,它給我一個套接字 80004005 錯誤,說連接被主動拒絕。 當我在另一台計算機上運行測試程序時,它說它沒有收到信號並超時。 當我檢查防火牆日志時,它說沒有被阻止。 我什至有防火牆規則來允許端口甚至 .exe 只是為了確保它獲得所有流量。
我有另一台裝有監聽軟件的電腦,它用 netstat 顯示這個
192.168.x.x:11000 * LISTENING
0.0.0.0:11000 * LISTENING
對於這台計算機,它工作正常。 測試程序將正常運行。
如果防火牆不是問題,因為我可以通過日志看到並且規則允許所有流量進入偵聽程序,為什么它會被主動拒絕並且不回話? 為什么在這台機器上它沒有將 192.168.xx 地址作為工作地址進行監聽?
我還不能確切地說發生了什么,但我可以建議一些檢查事項:
0.0.0.0:1000
顯示你的聽眾。 這表示端口1000
。 到目前為止,我已經在問題和編輯歷史記錄中看到嘗試連接到端口5000
和11000
,但從來沒有1000
。發現問題。 安裝軟件的人沒有在防火牆規則和軟件安裝完成后重新啟動系統。 我一定會用鼠標擊中他們失敗,因為我多次要求他們這樣做。
重新啟動后,它開始偵聽 192.168.xx 地址並且一切正常。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.