Add message when starting DHCP server
This commit is contained in:
parent
31f35da91d
commit
7ebc8ddb74
|
@ -39,6 +39,7 @@ import select
|
||||||
import ipaddress
|
import ipaddress
|
||||||
from socket import *
|
from socket import *
|
||||||
|
|
||||||
|
import daemon_lib.ansiiprint as ansiiprint
|
||||||
import daemon_lib.zkhandler as zkhandler
|
import daemon_lib.zkhandler as zkhandler
|
||||||
|
|
||||||
# see https://en.wikipedia.org/wiki/Dynamic_Host_Configuration_Protocol
|
# see https://en.wikipedia.org/wiki/Dynamic_Host_Configuration_Protocol
|
||||||
|
@ -715,7 +716,8 @@ class HostDatabase(object):
|
||||||
return list(map(Host.from_tuple, self.db.get(pattern)))
|
return list(map(Host.from_tuple, self.db.get(pattern)))
|
||||||
|
|
||||||
def add(self, host):
|
def add(self, host):
|
||||||
self.db.add(host.to_tuple())
|
host_tuple = host.to_tuple()
|
||||||
|
self.db.add(host_tuple)
|
||||||
|
|
||||||
def delete(self, host = None, **kw):
|
def delete(self, host = None, **kw):
|
||||||
if host is None:
|
if host is None:
|
||||||
|
@ -833,6 +835,7 @@ class DHCPServer(object):
|
||||||
if not any([host.ip == ip for host in known_hosts]):
|
if not any([host.ip == ip for host in known_hosts]):
|
||||||
print('add', mac_address, ip, packet.host_name)
|
print('add', mac_address, ip, packet.host_name)
|
||||||
self.hosts.replace(Host(mac_address, ip, packet.host_name or '', time.time()))
|
self.hosts.replace(Host(mac_address, ip, packet.host_name or '', time.time()))
|
||||||
|
ansiiprint.echo('DHCP client allocated - {} {} {}'.format(mac_address, ip, packet.host_name), '', 'i')
|
||||||
return ip
|
return ip
|
||||||
|
|
||||||
@property
|
@property
|
||||||
|
|
|
@ -78,6 +78,7 @@ class VXNetworkInstance():
|
||||||
if data != None and self.dhcp_flag != data.decode('ascii'):
|
if data != None and self.dhcp_flag != data.decode('ascii'):
|
||||||
self.dhcp_flag = ( data.decode('ascii') == 'True' )
|
self.dhcp_flag = ( data.decode('ascii') == 'True' )
|
||||||
if self.dhcp_flag:
|
if self.dhcp_flag:
|
||||||
|
ansiiprint.echo('Starting DHCP server for network "{}".'.format(self.ip_network), '', 'o')
|
||||||
dhcp_config = DHCPServer.DHCPServerConfiguration(
|
dhcp_config = DHCPServer.DHCPServerConfiguration(
|
||||||
zk_conn=self.zk_conn,
|
zk_conn=self.zk_conn,
|
||||||
ipaddr=self.ip_gateway,
|
ipaddr=self.ip_gateway,
|
||||||
|
@ -88,8 +89,9 @@ class VXNetworkInstance():
|
||||||
dns_servers=[]
|
dns_servers=[]
|
||||||
)
|
)
|
||||||
self.dhcp_instance = DHCPServer.DHCPServer(dhcp_config)
|
self.dhcp_instance = DHCPServer.DHCPServer(dhcp_config)
|
||||||
|
self.dhcp_instance.start()
|
||||||
else:
|
else:
|
||||||
self.dhcp_instance.remove()
|
self.dhcp_instance.close()
|
||||||
self.dhcp_instance = None
|
self.dhcp_instance = None
|
||||||
|
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue