In invirt-dhcp:
[invirt/packages/invirt-dhcp.git] / invirt-dhcpserver
index 74e554f..a1966d8 100755 (executable)
@@ -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))