使用VLAN的C#套接字连接

时间:2017-08-16 07:07:04

标签: c# tcp vlan

使用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
  • 发送syn
  • 收到syn ack
  • 发送确认
每次发送,碎片等等都有同样的麻烦

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

0 个答案:

没有答案