def main(): s = Server() s.server_name = 'example server' s.on_packet = print_packet s.on_request = request s.start(sys.argv[1]) s.serve()
def setup_dhcp_server(): global dhcp_server def dhcp_request(mac, hostname): info('DHCP request from {0} ({1})'.format(hostname, mac)) lease = Lease() lease.client_mac = mac lease.client_ip = ipaddress.ip_address(e('${FREENAS_IP}')) lease.client_mask = ipaddress.ip_address(e('${NETMASK}')) ready.set() return lease dhcp_server = Server() dhcp_server.server_name = 'FreeNAS_test_env' dhcp_server.on_request = dhcp_request dhcp_server.start(tapdev, ipaddress.ip_address(e('${HOST_IP}'))) threading.Thread(target=dhcp_server.serve, daemon=True).start() info('Started DHCP server on {0}', tapdev)