簡體   English   中英

打開沒有套接字的 tcp/udp 端口

[英]Open tcp/udp ports with no socket

我已經開始使用 winpcap,並且在使用 tcp/udp 端口​​時遇到了一個有趣的情況。 我寫了一個數據包轉發器,它嗅探接口並從指定端口轉發數據包。 我不打開端口,因為我直接從接口嗅探。 問題是 tcp/ip 堆棧在關閉的 tcp 端口上回答 RST、ACK,在關閉的 UDP 端口上無法訪問 ICMP 目標。

我需要以關閉端口不會回答任何會中斷對話的方式來解決這個問題。

有沒有辦法可以將數據包從到達 tcp/ip 堆棧中丟棄? 我可以禁用 RST、ACK 和目的地不可達的自動應答嗎? 我可以監聽不會在 SYN 數據包上重放 SYN ACK 的 tcp 嗎?

希望我說清楚了,謝謝。

我能想到的兩種解決方案:

  • 不要使用你的 PC IP 地址,使用不同的 IP 地址,並實現一個小的 ARP 回復邏輯,這不像試圖阻止數據包到達操作系統那樣令人頭疼。
  • 使用 WinDivert 驅動程序https://www.reqrypt.org/windivert.html我知道它可以讓操作系統丟棄數據包,但不確定這是否也涵蓋了 SYN 數據包。

暫無
暫無

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

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