全部
我来自微控制器领域(纯“ C”),这是我的第一个使用python和嵌入式linux的真实项目(Nanopi Neo)。如果问题措辞不好,我深表歉意。
我正在使用带有Ubuntu发行版(16.04.5 LTS)的Nanopi Neo板。我目前使用两个接口:有线以太网连接(eth0)和wifi无线连接(wlan0)。这两个接口都可以工作,因为板上有OLED屏幕,所以我可以看到两个IP地址。
我想将TCP服务器与有线接口(eth0)关联,并将HTTP客户端与wifi接口(wlan0)关联。
现场技术人员将连接到Nanopi上的服务器,以设置wifi的凭据。收到凭据后,现场技术人员将断开有线连接,并且Nanopi上的HTTP客户端将连接到wifi,并将信息发送到远程服务器。
我的问题如下:
如何将HTTP客户端与wlan0关联,并将TCP服务器与eth0关联?有可能吗?
如何编写代码以使两个任务(服务器和客户端)同时运行(我猜在两个单独的线程中)?
我不需要答案(尽管那会很好),但是有用的链接。我对“接口”,“客户端/服务器”,“并发”的搜索显示了所有错误的信息/示例...
感谢您的时间和帮助。
Grazie e ciao, 文森佐
=======编辑1 ======
我还没有机会尝试它,但是以下StackOverflow帖子:How to bind socket to an interface in python (socket.SO_BINDTODEVICE missing)似乎具有相关/有用的信息
答案 0 :(得分:0)
如果pycurl适合您,您可能需要研究以下第一个答案:Send http request through specific network interface
基本上,您将通过您选择的界面发送GET请求,因此您将在选择的界面上使用HTTP客户端。
我找不到解决“请求”的方法。
我知道这充其量只是部分答案。抱歉。