我正在开展一个项目,我希望通过另一个界面重定向以太网流量。设置如下:
我有一台可以上网的电脑。我还有一个MBED LPC1768板,我可以通过USB连接我的电脑。我可以将二进制文件上传到此设备并运行它。例如,我可以让它充当键盘并将击键发送到计算机。我也可以让设备充当鼠标并发送鼠标事件。
现在我希望设备充当以太网接口。由于设备是使用USB连接的,我正在考虑使用以太网USB协议。我已选择适用于Linux和OS X的USBCDC-ECM协议。插入设备时,设备被正确识别为以太网接口。此外,我在嵌入式设备上运行DHCP服务器,以便为计算机分配IP地址。请注意,该设备没有与外界有效的互联网连接(计算机确实有一个)。
因此嵌入式设备可以捕获来自计算机的互联网流量。当设备获取数据包时,我想分析数据包,将其发送回计算机并通过工作界面重定向。
例如,我在界面wlan0
上有一台笔记本电脑和一个工作连接。现在我插上设备。它被分配到接口eth0
。 eth0
是我在计算机上的首选界面,因此所有流量都转到eth0
。我在设备上捕获此流量,现在我想将流量发送回计算机并通过wlan0
(或任何其他工作接口)进行路由。所以基本上,我想创建一个捕获数据并将其发送回计算机的设备,就像中间件USB设备一样,用于互联网流量。
这可能吗?我不想修改操作系统上的设置,让设备管理它。我的主要操作系统是Ubuntu 14.04,所以我现在不关心Windows或OS X.另外,还有其他选择吗?也许USBCDC-ECM不是最好的选择。
任何帮助都将受到高度赞赏。
答案 0 :(得分:1)
为 Internet连接共享(ICS)配置主机(连接MBED板的计算机),也称为网络桥接。如何完成取决于主机的操作系统;例如:
在这种情况下,主机是DHCP服务器并为设备提供地址;然后,设备本身必须是DHCP 客户端而不是服务器。
答案 1 :(得分:1)
我不确定您要尝试完成的任务,但如果您的设备已显示为以太网连接,则无法使用iptables将流量重定向到您的设备?
否则,您可以让您的设备充当DNS服务器并处理传入的DNS查找并重定向它们。只是一个疯狂的想法。
答案 2 :(得分:0)
如果你有一个Linux操作系统,你可以使用iptables并通知局域网外的所有流量都通过该接口。这是正确的做法。