如何在特定界面上使用 cURL

新手上路,请多包涵

我正在用c开发一个代码,它只是通过使用curl实用程序来FTP服务器上的文件,遵循这个 例子

现在我有一件简单的事情要做,指定 curl 使用服务器的特定接口(IP)进行上传,因为服务器的其他接口与其他套接字连接相关联。

有什么办法吗?

原文由 madiha malik 发布,翻译遵循 CC BY-SA 4.0 许可协议

阅读 669
2 个回答

好像 curl 支持 --interface 选项

curl --interface eth0

原文由 MrFreezer 发布,翻译遵循 CC BY-SA 3.0 许可协议

对于来到这里寻找相同答案的任何人,但对于 wlan0 或 Raspberry/RPi 上的任何非默认界面,您需要 sudo 或以 root 身份运行。

就我而言,我正在运行 eth0 和 wlan0,但 eth0 是我的默认 NIC。 Ping 在没有 sudo 的情况下工作,curl 没有足够详细的日志记录,只是说连接超时并且只能在 eth0 上没有 sudo 的情况下工作。当错误说“setsockopt SO_BINDTODEVICE:不允许操作”时,Traceroute 终于让我得到了答案

原文由 Brandocious 发布,翻译遵循 CC BY-SA 4.0 许可协议

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题