#! /usr/bin/python import os from socket import * MTU=1600 VLAN_ORI = 1 VLAN_DST = 2 IFACE = "vmnet1" TAP = "/dev/tap0" f=os.open(TAP, os.O_RDWR) s=socket(AF_PACKET, SOCK_RAW, 0) s.bind((IFACE, 0)) try: while 1: pkt=os.read(f, MTU) l8021q="\x81\x00\x00"+chr(VLAN_ORI)+"\x81\x00\x00"+chr(VLAN_DST) encap=pkt[2:14]+l8021q+pkt[14:] s.send(encap) except KeyboardInterrupt: pass s.close() os.close(f)