X-Git-Url: http://xvm.mit.edu/gitweb/invirt/packages/invirt-dhcp.git/blobdiff_plain/2ed651c18878099cf940b07a9136387a643dd464..9fd5fdfd5648b727cc7c0005ec56c77adef48099:/invirt-dhcpserver diff --git a/invirt-dhcpserver b/invirt-dhcpserver index 74e554f..a1966d8 100755 --- a/invirt-dhcpserver +++ b/invirt-dhcpserver @@ -7,6 +7,7 @@ from pydhcplib.type_hw_addr import hwmac from pydhcplib.type_ipv4 import ipv4 from pydhcplib.type_strlist import strlist import socket +import os import IN import syslog as s @@ -18,14 +19,15 @@ from invirt.config import structs as config dhcp_options = {'subnet_mask': config.dhcp.netmask, 'router': config.dhcp.gateway, 'domain_name_server': ','.join(config.dhcp.dns), - 'ip_address_lease_time': 60*60*24} + 'ip_address_lease_time': 60*60*24, + 'server_identifier': socket.gethostbyname(os.uname()[1])} class DhcpBackend: def __init__(self): database.connect() def findNIC(self, mac): database.clear_cache() - return database.NIC.query().filter_by(mac_addr=mac).one() + return database.NIC.query().filter_by(mac_addr=mac).first() def find_interface(self, packet): chaddr = hwmac(packet.GetHardwareAddress()) nic = self.findNIC(str(chaddr))