3

使用 C#,我正在尝试建立 tcp 连接,然后将 tcp 数据包发送到远程设备

Socket sock = new Socket(System.Net.Sockets.AddressFamily.InterNetwork, SocketType.Stream, ProtocolType.Tcp);
IPAddress destAddress = IPAddress.Parse("10.30.5.222");
sock.Bind(new IPEndPoint(IPAddress.Any, 14500));
sock.Connect(destAddress, 14500);

发生的情况是我的程序发送了一个 ARP 请求,但远程设备将其丢弃。

远程设备仅接受具有特定 vLan Id 的 vLan 标记帧的根本原因。但是,我的 C# 代码发送没有 vlan 标记的以太网帧。

有没有办法发送 vLan 标记的帧?我读到了 pcapdotnet。但据我了解,它只发送单个数据包。这意味着我需要在代码中手动执行以下操作来建立连接:

  • 发送ARP
  • 接收ARP
  • 发送同步
  • 接收同步确认
  • 发送确认

每次发送,碎片,...等都有同样的麻烦

有没有办法将我的通信配置为 vLan 标记,而无需逐包写入?(在 C# 中首选)

4

0 回答 0