Raw socket when interface down.

Collapse
This topic is closed.
X
X
 
  • Time
  • Show
Clear All
new posts
  • Mat

    Raw socket when interface down.

    Hi,

    I'm trying to use raw sockets in python for a dhcp client. I write this code :

    soc = socket.socket(s ocket.PF_PACKET , socket.SOCK_RAW )
    soc.bind(("eth0 ",0x0800))
    data = soc.recv(1024)
    print len(data)

    It seems to work correctly when interface is up, but when network interface is
    down I get this message :
    socket.error: (100, 'Network is down')

    I look over a lot of C code of dhcp clients. But I didn't find something useful.
    I don't how to access the network when interface is down with python. Can
    someone helps ?

    Thanks !

    --
    Mat

  • saju.pillai@gmail.com

    #2
    Re: Raw socket when interface down.

    On Nov 5, 8:37 pm, Mat <matsu...@orang e.frwrote:
    Hi,
    >
    I'm trying to use raw sockets in python for a dhcp client. I write this code :
    >
    soc = socket.socket(s ocket.PF_PACKET , socket.SOCK_RAW )
    soc.bind(("eth0 ",0x0800))
    data = soc.recv(1024)
    print len(data)
    >
    It seems to work correctly when interface is up, but when network interface is
    down I get this message :
    socket.error: (100, 'Network is down')
    >
    I look over a lot of C code of dhcp clients. But I didn't find something useful.
    I don't how to access the network when interface is down with python. Can
    someone helps
    mmm, if the interface is down the n/w subsystem will not send messages
    out and if possible also disables reception of messages via that
    interface. In your case it is likely that the interface message
    reception is also disabled. You need to bring up the interface
    (ifconfig eth0 up) before you can read/write any data on that
    interface.

    -srp

    Comment

    Working...