[157724] in North American Network Operators' Group
dhcpy6d - a MAC address aware DHCPv6 server
daemon@ATHENA.MIT.EDU (Henri Wahl)
Mon Nov 5 16:01:02 2012
Date: Mon, 05 Nov 2012 09:14:54 +0100
From: Henri Wahl <h.wahl@ifw-dresden.de>
To: nanog@nanog.org
Errors-To: nanog-bounces+nanog.discuss=bloom-picayune.mit.edu@nanog.org
Dies ist eine kryptografisch unterzeichnete Nachricht im MIME-Format.
--------------ms080208050708040603010201
Content-Type: text/plain; charset=ISO-8859-1
Content-Transfer-Encoding: quoted-printable
Hello World,
like other people we had the problem that existing DHCPv6 servers do not
evaluate the MAC address of clients, following RFC 3315. The IPv4
clients already are managed via their MAC addresses so we wanted to use
these identifiers for IPv6 too for our dualstack network.
At the end we had to write our own DHCPv6 server dhcpy6d which I want to
present here to a larger audience. It runs on Linux, tested on Debian
and CentOS. It gets the client MAC addresses from neighbor cache by
calling "ip -6 neigh" and caches them itself, allowing to access the
already working MAC-based IPv4 infrastructure. This obviously only works
on the local subnet but might be worked around with several servers
being connected via database storage of clients and leases.
Features are:
- identifies clients by MAC address, DUID or hostname
- generates addresses randomly, by MAC address, by range or by given ID
- filters clients by MAC, DUID or hostname
- assignes more than one address per client
- allows to organize clients in different classes
- stores leases in MySQL or SQLite database
- client information can be retrieved from database or textfile
- dynamically updates DNS (Bind)
We run it with ~500 clients without problems. I am interested if it
would run in larger environments too. If not, how to make it running.
Bugs and ideas how to improve it are welcome too.
Packages are not yet available but the Python code should run as is.
See further details at http://dhcpy6d.ifw-dresden.de
Best regards
Henri Wahl
--=20
Henri Wahl
IT Department
Leibniz-Institut f=FCr Festk=F6rper- u.
Werkstoffforschung Dresden
tel. (03 51) 46 59 - 797
email: h.wahl@ifw-dresden.de
http://www.ifw-dresden.de
Nagios status monitor for your desktop:
http://nagstamon.ifw-dresden.de
IFW Dresden e.V., Helmholtzstra=DFe 20, D-01069 Dresden
VR Dresden Nr. 1369
Vorstand: Prof. Dr. Ludwig Schultz, Dr. h.c. Dipl.-Finw. Rolf Pfrengle
--------------ms080208050708040603010201
Content-Type: application/pkcs7-signature; name="smime.p7s"
Content-Transfer-Encoding: base64
Content-Disposition: attachment; filename="smime.p7s"
Content-Description: S/MIME Kryptografische Unterschrift
MIAGCSqGSIb3DQEHAqCAMIACAQExCzAJBgUrDgMCGgUAMIAGCSqGSIb3DQEHAQAAoIIOYDCC
BCEwggMJoAMCAQICAgDHMA0GCSqGSIb3DQEBBQUAMHExCzAJBgNVBAYTAkRFMRwwGgYDVQQK
ExNEZXV0c2NoZSBUZWxla29tIEFHMR8wHQYDVQQLExZULVRlbGVTZWMgVHJ1c3QgQ2VudGVy
MSMwIQYDVQQDExpEZXV0c2NoZSBUZWxla29tIFJvb3QgQ0EgMjAeFw0wNjEyMTkxMDI5MDBa
Fw0xOTA2MzAyMzU5MDBaMFoxCzAJBgNVBAYTAkRFMRMwEQYDVQQKEwpERk4tVmVyZWluMRAw
DgYDVQQLEwdERk4tUEtJMSQwIgYDVQQDExtERk4tVmVyZWluIFBDQSBHbG9iYWwgLSBHMDEw
ggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQDpm8NnhfkNrvWNVMOWUDU9YuluTO2U
1wBblSJ01CDrNI/W7MAxBAuZgeKmFNJSoCgjhIt0iQReW+DieMF4yxbLKDU5ey2QRdDtoAB6
fL9KDhsAw4bpXCsxEXsM84IkQ4wcOItqaACa7txPeKvSxhObdq3u3ibo7wGvdA/BCaL2a869
080UME/15eOkyGKbghoDJzANAmVgTe3RCSMqljVYJ9N2xnG2kB3E7f81hn1vM7PbD8URwoqD
oZRdQWvY0hD1TP3KUazZve+Sg7va64sWVlZDz+HVEz2mHycwzUlU28kTNJpxdcVs6qcLmPkh
nSevPqM5OUhqjK3JmfvDEvK9AgMBAAGjgdkwgdYwcAYDVR0fBGkwZzBloGOgYYZfaHR0cDov
L3BraS50ZWxlc2VjLmRlL2NnaS1iaW4vc2VydmljZS9hZl9Eb3dubG9hZEFSTC5jcmw/LWNy
bF9mb3JtYXQ9WF81MDkmLWlzc3Vlcj1EVF9ST09UX0NBXzIwHQYDVR0OBBYEFEm3xs/oPR9/
6kR7Eyn38QpwPt5kMB8GA1UdIwQYMBaAFDHDeRu69VPXF+CJei0XbAqzK50zMA4GA1UdDwEB
/wQEAwIBBjASBgNVHRMBAf8ECDAGAQH/AgECMA0GCSqGSIb3DQEBBQUAA4IBAQA74Vp3wEgX
3KkY7IGvWonwvSiSpspZGBJw7Cjy565/lizn8l0ZMfYTK3S9vYCyufdnyTmieTvhERHua3iR
M347XyYndVNljjNj7s9zw7CSI0khUHUjoR8Y4pSFPT8z6XcgjaK95qGFKUD2P3MyWA0Ja6ba
hWzAP7uNZmRWJE6uDT8yNQFb6YyC2XJZT7GGhfF0hVblw/hc843uR7NTBXDn5U2KaYMo4RMJ
hp5eyOpYHgwf+aTUWgRo/Sg+iwK2WLX2oSw3VwBnqyNojWOl75lrXP1LVvarQIc01BGSbOyH
xQoLBzNytG8MHVQs2FHHzL8w00Ny8TK/jM5JY6gA9/IcMIIFFTCCA/2gAwIBAgIEDBQODDAN
BgkqhkiG9w0BAQUFADBaMQswCQYDVQQGEwJERTETMBEGA1UEChMKREZOLVZlcmVpbjEQMA4G
A1UECxMHREZOLVBLSTEkMCIGA1UEAxMbREZOLVZlcmVpbiBQQ0EgR2xvYmFsIC0gRzAxMB4X
DTA4MDQwMzA4MDgzMFoXDTE5MDYzMDAwMDAwMFowgYcxCzAJBgNVBAYTAkRFMRAwDgYDVQQI
EwdTYWNoc2VuMRAwDgYDVQQHEwdEcmVzZGVuMRkwFwYDVQQKExBJRlcgRHJlc2RlbiBlLlYu
MRcwFQYDVQQDEw5JRlcgRHJlc2RlbiBDQTEgMB4GCSqGSIb3DQEJARYRY2FAaWZ3LWRyZXNk
ZW4uZGUwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQCtaVHQKqI4m9r+SPwQinJK
OrXekndyD8KDeeND5GuwC5o9lSjKhtsV6IRYZL8m+e45XXMu8td3dzUn42CIt1FdYk9rRPwn
yOLWkrrLn2hzRUrDJlZYl5OfFbBgx3zMIWDx1lAt2ypUOKkIKpR7NqdlnDGO4XrZb7am5TjC
Pzqjyahlim/xfAcQKC47sVPA5uuSbURGhxQZ/W9CuP90ZCTuEOHsvV2EaP+EJv6Io6O4sMX9
oWtCtNvOQdLWeMgEius4uasBcZ1srhmhFyFK1OOnQJcic2OJ8+8XMbHGQURtI3BN2h1aYOtj
WeztmIoGyMEaUV5iV+sTCd46+qQvSDhDAgMBAAGjggGzMIIBrzASBgNVHRMBAf8ECDAGAQH/
AgEBMAsGA1UdDwQEAwIBBjAdBgNVHQ4EFgQULvMLHRbD7LdO9ZIlHsCPQEJxh/8wHwYDVR0j
BBgwFoAUSbfGz+g9H3/qRHsTKffxCnA+3mQwHAYDVR0RBBUwE4ERY2FAaWZ3LWRyZXNkZW4u
ZGUwgYgGA1UdHwSBgDB+MD2gO6A5hjdodHRwOi8vY2RwMS5wY2EuZGZuLmRlL2dsb2JhbC1y
b290LWNhL3B1Yi9jcmwvY2FjcmwuY3JsMD2gO6A5hjdodHRwOi8vY2RwMi5wY2EuZGZuLmRl
L2dsb2JhbC1yb290LWNhL3B1Yi9jcmwvY2FjcmwuY3JsMIGiBggrBgEFBQcBAQSBlTCBkjBH
BggrBgEFBQcwAoY7aHR0cDovL2NkcDEucGNhLmRmbi5kZS9nbG9iYWwtcm9vdC1jYS9wdWIv
Y2FjZXJ0L2NhY2VydC5jcnQwRwYIKwYBBQUHMAKGO2h0dHA6Ly9jZHAyLnBjYS5kZm4uZGUv
Z2xvYmFsLXJvb3QtY2EvcHViL2NhY2VydC9jYWNlcnQuY3J0MA0GCSqGSIb3DQEBBQUAA4IB
AQDWzEgwolQCnshrwyViMVZkiwlYt6r0S/km/vRC9ZDi8paxJYu3Qe4MicYsDc27eb1V7rPB
1oKOgAGK1MUr6/yYp9y/ChTS9iabazUib+ox4pgERGnX7qcHeALqPKAWuyVhEQ3Wiqi32ZYm
2bn9e2Qe+0O4KcPcmyYJOs+TBSYJtNgdW2deYEclTtvybxMYhxOorB88qlPMdN9LTrK8S2kY
63Oeo2v6SkgFwHUv8c8J5Cilc5Wj6vPDSjGrn3Rc3d9XDKomq8iQNkW2XRNno+cc5CV3vBmH
ZUIHjktDVk498P/MbEYZsowo6eFnhnzrsmPiQBWu8JlF3OU/eKG/ebb7MIIFHjCCBAagAwIB
AgIEEcy5NTANBgkqhkiG9w0BAQUFADCBhzELMAkGA1UEBhMCREUxEDAOBgNVBAgTB1NhY2hz
ZW4xEDAOBgNVBAcTB0RyZXNkZW4xGTAXBgNVBAoTEElGVyBEcmVzZGVuIGUuVi4xFzAVBgNV
BAMTDklGVyBEcmVzZGVuIENBMSAwHgYJKoZIhvcNAQkBFhFjYUBpZnctZHJlc2Rlbi5kZTAe
Fw0xMTA0MTkwNzM3MDlaFw0xNDA0MTgwNzM3MDlaMD0xCzAJBgNVBAYTAkRFMRkwFwYDVQQK
ExBJRlcgRHJlc2RlbiBlLlYuMRMwEQYDVQQDEwpIZW5yaSBXYWhsMIIBIjANBgkqhkiG9w0B
AQEFAAOCAQ8AMIIBCgKCAQEA5mGCzWbUMWYyM7SVAoS0VbbzOfpZ+Ae+s0t3+2RMdwU4RadM
ZVCUQzWiEkX1goBW87T/GmDbb7fXSf7WrUyFjZxAyrF5YiOZhNlcm0PvYsHF2GUiK29bqL9H
zKNWMuwtMGkjqAUFPpJPtpreuUXxT9Fi40Q11XByN45xV4BaNOG6/O7o4p516/uWf2DEj3Q/
TZYA1GdXmyxRHMMtMIvw5pMz6Tm6gHIOoP1dF2ty0mYk6ywcEXLq3o8ecWMZiJm9vhPWzfGn
6/2HDk72KjGzPKjCi1qCRHpZTs5VaCAIkpBGqBOk1QZYxWjLGmhzcc3MZgUcmfuoIsxR2m9g
AZB2IwIDAQABo4IB2TCCAdUwCQYDVR0TBAIwADALBgNVHQ8EBAMCBeAwKQYDVR0lBCIwIAYI
KwYBBQUHAwIGCCsGAQUFBwMEBgorBgEEAYI3FAICMB0GA1UdDgQWBBTRJ5bAf/hkK34SrM/z
/fsonOI3GDAfBgNVHSMEGDAWgBQu8wsdFsPst071kiUewI9AQnGH/zAgBgNVHREEGTAXgRVo
LndhaGxAaWZ3LWRyZXNkZW4uZGUwgYgGA1UdHwSBgDB+MD2gO6A5hjdodHRwOi8vY2RwMS5w
Y2EuZGZuLmRlL2lmdy1kcmVzZGVuLWNhL3B1Yi9jcmwvY2FjcmwuY3JsMD2gO6A5hjdodHRw
Oi8vY2RwMi5wY2EuZGZuLmRlL2lmdy1kcmVzZGVuLWNhL3B1Yi9jcmwvY2FjcmwuY3JsMIGi
BggrBgEFBQcBAQSBlTCBkjBHBggrBgEFBQcwAoY7aHR0cDovL2NkcDEucGNhLmRmbi5kZS9p
ZnctZHJlc2Rlbi1jYS9wdWIvY2FjZXJ0L2NhY2VydC5jcnQwRwYIKwYBBQUHMAKGO2h0dHA6
Ly9jZHAyLnBjYS5kZm4uZGUvaWZ3LWRyZXNkZW4tY2EvcHViL2NhY2VydC9jYWNlcnQuY3J0
MA0GCSqGSIb3DQEBBQUAA4IBAQArHA8FqV5hAppyrDhXi5rsEp21lBbNCniwzwasff+lyWNm
IiEvjAcMkSwXoIjxP2HM87SUFijO7J+g9tQY2W4yaIU/OX8FkorzDH1NcI3RWoCjdhddWlEJ
eM0R/2+AQbJaPXFtilFjjPFC4/a6XZMSUCvfxrQGbxMRj6czBVM2LkOwRi2FfAMBP3qO6fQ6
IQNnjq0UppqT3O3W2acG/KIQgor06RrYVhWrDCOejW/xFSE1JFu+Dko4wHBO4/NUllxYXabS
0TDuzuQzQnRmG+ymeg/I1Cpd0JRvzPXgO4H6uXROPfnWTqd1wbK4daDPtde2e/qPB8+r2D1g
ZBKt6nr+MYID0TCCA80CAQEwgZAwgYcxCzAJBgNVBAYTAkRFMRAwDgYDVQQIEwdTYWNoc2Vu
MRAwDgYDVQQHEwdEcmVzZGVuMRkwFwYDVQQKExBJRlcgRHJlc2RlbiBlLlYuMRcwFQYDVQQD
Ew5JRlcgRHJlc2RlbiBDQTEgMB4GCSqGSIb3DQEJARYRY2FAaWZ3LWRyZXNkZW4uZGUCBBHM
uTUwCQYFKw4DAhoFAKCCAhUwGAYJKoZIhvcNAQkDMQsGCSqGSIb3DQEHATAcBgkqhkiG9w0B
CQUxDxcNMTIxMTA1MDgxNDU0WjAjBgkqhkiG9w0BCQQxFgQUtoH5WInyLpGMRCoWxPlnfbN1
TD8wbAYJKoZIhvcNAQkPMV8wXTALBglghkgBZQMEASowCwYJYIZIAWUDBAECMAoGCCqGSIb3
DQMHMA4GCCqGSIb3DQMCAgIAgDANBggqhkiG9w0DAgIBQDAHBgUrDgMCBzANBggqhkiG9w0D
AgIBKDCBoQYJKwYBBAGCNxAEMYGTMIGQMIGHMQswCQYDVQQGEwJERTEQMA4GA1UECBMHU2Fj
aHNlbjEQMA4GA1UEBxMHRHJlc2RlbjEZMBcGA1UEChMQSUZXIERyZXNkZW4gZS5WLjEXMBUG
A1UEAxMOSUZXIERyZXNkZW4gQ0ExIDAeBgkqhkiG9w0BCQEWEWNhQGlmdy1kcmVzZGVuLmRl
AgQRzLk1MIGjBgsqhkiG9w0BCRACCzGBk6CBkDCBhzELMAkGA1UEBhMCREUxEDAOBgNVBAgT
B1NhY2hzZW4xEDAOBgNVBAcTB0RyZXNkZW4xGTAXBgNVBAoTEElGVyBEcmVzZGVuIGUuVi4x
FzAVBgNVBAMTDklGVyBEcmVzZGVuIENBMSAwHgYJKoZIhvcNAQkBFhFjYUBpZnctZHJlc2Rl
bi5kZQIEEcy5NTANBgkqhkiG9w0BAQEFAASCAQCBPwMWx9sIwJmEGAtZoTKmHdYTvtUMQJSs
FIas3c01CafuUljY5BCODkot9wohcw5YZraYR2nMJP3KFrv0VGdYThVyWV5wWD/32rwESjfi
pG1ArK9EfMPl98C9TmOHjj2HJzuHUOB6Xgn5thWRjGMWmOG9XF0HwaGAvjnmPvRA/Om1xk3R
pf6U8XrflYQ8V0dgfTNzaK9GkXzJdUFs7sI0M/HhMt0lYbIpDvq1UKO9t6FtCRKkpBzsc0g2
/mmXFwyMbd2r2eJT5/AYCXy4lBM77eHb8OZ1T4FCmSI2PUXKoa5vLbdtyU+xD3MW2VBgPP2w
YX0JKEgqchsaWZ1BYF1hAAAAAAAA
--------------ms080208050708040603010201--