Linux 将数据从原始套接字发送到udp或tcp套接字
我正在努力学习Linux中的套接字。我有一个小的开发板,像raspberry Pi,里面运行Linux。不幸的是,它没有以太网或usb端口 我已经创建了一个虚拟网络接口,并像默认网关一样使用它。我已经编写了一个小程序,使用原始套接字监听虚拟接口(然后通过串行线将所有数据包发送到计算机,其中的程序将这些数据包发送到internet并接收答案,然后将它们发送回) 我的问题是,当我尝试ping一些公共IP地址时,我可以在tcpdump中看到计算机和开发板中的ICMP请求和响应。但是ping看起来好像什么也没收到 我曾尝试使用环回接口而不是虚拟接口,但在这种情况下,ping被循环,设备在一段时间内变得不响应:)。但是ping确实收到了ICMP响应,并且TCP连接不起作用 我还尝试使用2个虚拟接口并创建桥接器 如果有任何建议,我将不胜感激。使用tun接口解决:)看起来linux无法将原始套接字“绑定”到其他类型的套接字,因为所有数据包都被传输,而没有任何数据包被接收。Linux 将数据从原始套接字发送到udp或tcp套接字,linux,sockets,network-programming,Linux,Sockets,Network Programming,我正在努力学习Linux中的套接字。我有一个小的开发板,像raspberry Pi,里面运行Linux。不幸的是,它没有以太网或usb端口 我已经创建了一个虚拟网络接口,并像默认网关一样使用它。我已经编写了一个小程序,使用原始套接字监听虚拟接口(然后通过串行线将所有数据包发送到计算机,其中的程序将这些数据包发送到internet并接收答案,然后将它们发送回) 我的问题是,当我尝试ping一些公共IP地址时,我可以在tcpdump中看到计算机和开发板中的ICMP请求和响应。但是ping看起来好像什