Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/linux/24.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
用Python处理多个网络接口_Python_Linux_Networking_Ip - Fatal编程技术网

用Python处理多个网络接口

用Python处理多个网络接口,python,linux,networking,ip,Python,Linux,Networking,Ip,如何在python中执行以下操作: 列出当前计算机上的所有IP接口 接收有关网络接口更改的更新(上升、下降、更改IP地址) Ubuntu Hardy中提供的任何python包都可以。我认为最好的方法是通过 网络接口上有一点触动: import dbus bus = dbus.SystemBus() proxy = bus.get_object('org.freedesktop.NetworkManager', '/org/freedesktop/Ne

如何在python中执行以下操作:

  • 列出当前计算机上的所有IP接口
  • 接收有关网络接口更改的更新(上升、下降、更改IP地址)

  • Ubuntu Hardy中提供的任何python包都可以。

    我认为最好的方法是通过

    网络接口上有一点触动:

    import dbus
    bus = dbus.SystemBus()
    proxy = bus.get_object('org.freedesktop.NetworkManager',
                           '/org/freedesktop/NetworkManager/Devices/eth0')
    # proxy is a dbus.proxies.ProxyObject
    

    我一直在使用以下代码

    temp =  str(os.system("ifconfig -a | awk '$2~/^Link/{_1=$1;getline;if($2~/^addr/){print _1" "}}'"))
    
    它将放弃“放弃”网络接口


    e、 g.eth0,eth2,wlan0不,不。。。您不需要麻烦os.system()或dbusapi

    您真正需要的是使用NetlinkAPI来实现这一点。使用接口(netlink.route.link)或自己处理netlink消息。看一看