【问题标题】:How to bind a raw socket to a specific interface using python in linux centOS?如何在 linux centOS 中使用 python 将原始套接字绑定到特定接口?
【发布时间】:2014-11-20 05:31:34
【问题描述】:

如何在 linux centOS 中使用 python 将原始套接字绑定到特定接口?我有多个接口,例如 eth0、eth0:1、eth0:2 等

【问题讨论】:

  • 我使用以下 cURL 命令从 eth0:1 “curl--interface 10.91.56.2 http:/10.91.55.3/file0.txt”发送请求,并且成功地从虚拟 eth0 生成流量: 1.谁能指导我如何使用python做到这一点? 10.91.56.2 是我的虚拟 eth0:1 IP 接口,10.91.55.3 是我的服务器地址...

标签: python linux centos raw-sockets


【解决方案1】:

您可以使用与所需接口对应的 IP 地址来完成。

import socket

s = socket.socket()
s.bind(('192.168.1.100', 12345))

s = socket.socket()
s.bind(('localhost', 12345))

s = socket.socket()
s.bind(('0.0.0.0', 12345))

上面的前两个将绑定到具有该 IP 地址的接口。最后一个将绑定到任何接口。您可以使用此recipe 获取接口的 IP 地址。

【讨论】:

    猜你喜欢
    • 2011-04-29
    • 1970-01-01
    • 1970-01-01
    • 2016-10-23
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多