This is probably a very simple thing.
I'm new to python so don't crucify me.
s = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
s.setsockopt(socket.SOL_SOCKET, IN.SO_BINDTODEVICE, "eth1"+'\0')
NameError: name 'IN' is not defined
If you don't understand the error message, it means you're referring a name
IN which is not available at that point. Your code snippet is likely missing an import statement.
The socket module may not offer SO_BINDTODEVICE for portability reasons. If you are absolutely sure that you're running on Linux that supports it, try replacing it with it's numerical value, which is
s.setsockopt(socket.SOL_SOCKET, 25, "eth1"+'\0')