On 2018-01-20 09:55, Francis Dupont wrote: > I can't see what is in the ... in subnet definitions but I am afraid > there is no "interface": "br0" so no subnet can't be selected from > the incoming packet. I sent in this a description of the algorithm > of the subnet selection. To summary with a broadcast packet from a > directly connected client without specific options the only thing > which works is to match the interface. When you have a class guard > in a subnet definition either the packet is in the class and this > subnet is selected, or it is not and this subnet is rejected and > the next (in the config file order) subnet is tried. Note this > applies to subnets in a shared network, i.e. a class guard in > a subnet entry is strict: pools or reservations under the subnet > are only for class members (i.e. it is not the ISC DHCP behavior > and class for pools (which I expect to be merged next week) > will be different too). > > About the classes themselves I expect the branch where I added logical > expressions using classes will be reviewed soon so you should no longer > need to evaluate twice the substring equal expression. > > For the "not using the classes" I can't say because I lack infos. > If you use Kea 1.3 perhaps you should try a shared network > as pools and host reservations in a shared network are for the whole > shared network as soon as they are not under a subnet with a class guard. > > Pools with class could help too but they are not yet available. > > Thanks > > Francis Dupont <fdup...@isc.org> Hi Francis!
Thank you for helping me out.Yes, I run version 1.3.0. I managed to get the reservation going after using "shared-networks" like you suggested and specifying the interface in the subnets. Everything is fine except that the FQDN sent back to the client is in the domain specified in subnet 1 but it gets the rest of the configuration from subnet 2. The complete configuration looks like this: > { > "Dhcp4": { > "interfaces-config": { > "interfaces": [ > "br0" > ], > "dhcp-socket-type": "raw" > }, > "control-socket": { > "socket-type": "unix", > "socket-name": "/tmp/kea-dhcp4-ctrl.sock" > }, > "lease-database": { > "type": "mysql", > "name": "kea", > "user": "kea", > "password": "password", > "lfc-interval": 3600 > }, > "hosts-database": { > "type": "mysql", > "name": "kea", > "user": "kea", > "password": "password" > }, > "valid-lifetime": 4000, > "renew-timer": 1000, > "rebind-timer": 2000, > "option-data": [ > { > "name": "default-ip-ttl", > "data": "0xf0" > } > ], > "client-classes": [ > { > "name": "none", > "test": "not (substring(pkt4.mac, 0, 3) == 0x525400)" > }, > { > "name": "vm", > "test": "substring(pkt4.mac, 0, 3) == 0x525400" > } > ], > "shared-networks": [ > { > "name": "local-networks", > "interface": "br0", > "subnet4": [ > { > "subnet": "192.168.0.0/24", > "id": 1, > "client-class": "none", > "pools": [ > { > "pool": "192.168.0.50 - 192.168.0.199" > } > ], > "reservation-mode": "out-of-pool", > "option-data": [ > { > "name": "domain-name-servers", > "data": "192.168.0.1" > }, > { > "name": "domain-name", > "data": "dhcp.local.intra" > }, > { > "name": "domain-search", > "data": "local.intra, vm.local.intra, dhcp.local.intra" > }, > { > "name": "routers", > "data": "192.168.0.1" > } > ] > }, > { > "subnet": "192.168.1.0/24", > "id": 2, > "client-class": "vm", > "pools": [ > { > "pool": "192.168.1.224 - 192.168.1.254" > } > ], > "reservation-mode": "out-of-pool", > "option-data": [ > { > "name": "domain-name-servers", > "data": "192.168.1.1" > }, > { > "name": "domain-name", > "data": "vm.local.intra" > }, > { > "name": "domain-search", > "data": "local.intra, vm.local.intra, dhcp.local.intra" > }, > { > "name": "routers", > "data": "192.168.1.1" > } > ] > } > ] > } > ], > "dhcp-ddns": { > "enable-updates": false, > "override-client-update": true, > "override-no-update": true, > "replace-client-name": "always", > "generated-prefix": "host", > "qualifying-suffix": "dhcp.local.intra." > } > }, > "Logging": { > "loggers": [ > { > "name": "kea-dhcp4", > "output_options": [ > { > "output": "syslog" > } > ], > "severity": "DEBUG", > "debuglevel": 55 > } > ] > } > } Does this mean that I have to specify the FQDN in the hosts table? I tried that but it concatenated the two domains instead of going with the specified hostname. I also get this error: > [kea-dhcp4.dhcpsrv/18862] DHCPSRV_MULTIPLE_RAW_SOCKETS_PER_IFACE current configuration will result in opening multiple broadcast capable sockets on some interfaces and some DHCP messages may be duplicated What can I do in my config to get around this? I don't like the sound of duplicate messages. The interface has both 192.168.0.1/24 and 192.168.1.1/24. I'm just experimenting so any suggestion is welcome. Thank you, Tobias _______________________________________________ Kea-users mailing list Kea-users@lists.isc.org https://lists.isc.org/mailman/listinfo/kea-users