dhcpd and radvd configurations for dynamic host addressing on the COSI network.
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 

171 lines
8.6 KiB

#
# /etc/dhcp/common4.conf for common DHCP configurations between both servers
#
# gateway
option routers 128.153.145.1;
# subnet mask
option subnet-mask 255.255.254.0;
# COSI subdomain (so talks/ works for example)
option domain-name "cslabs.clarkson.edu";
# domain name servers (Windows devices will round robin these btw)
option domain-name-servers 128.153.145.53,128.153.0.254,128.153.5.254;
# ntp servers (these are tick.clarkson.edu and tock.clarkson.edu)
option ntp-servers 128.153.2.253,128.153.5.253;
# lease times
default-lease-time 43200;
max-lease-time 86400;
# ntp offset for timezone
# UTC +5
option time-offset -18000;
# UTC +4
# option time-offset -14400;
# this is the only DHCP server for this range
authoritative;
option arch code 93 = unsigned integer 16;
option rfc3442-classless-static-routes code 121 = array of integer 8;
option ms-classless-static-routes code 249 = array of integer 8;
option vlan-id code 132 = text;
subnet 128.153.144.0 netmask 255.255.254.0 {
pool {
range 128.153.144.100 128.153.144.254;
# Atlas isn't running a DHCP server at this time
#failover peer "dhcp-failover";
# COSI
group {
host cthulhu.cslabs.clarkson.edu { hardware ethernet 4c:cc:6a:fa:dd:86; fixed-address 128.153.144.20; }
host cosi-01.cslabs.clarkson.edu { hardware ethernet fc:aa:14:99:ca:eb; fixed-address 128.153.144.21; }
host cosi-02.cslabs.clarkson.edu { hardware ethernet fc:aa:14:9c:64:9c; fixed-address 128.153.144.22; }
host cosi-03.cslabs.clarkson.edu { hardware ethernet fc:aa:14:9d:2c:bf; fixed-address 128.153.144.23; }
host cosi-04.cslabs.clarkson.edu { hardware ethernet fc:aa:14:9d:9b:40; fixed-address 128.153.144.24; }
host cosi-05.cslabs.clarkson.edu { hardware ethernet 30:9c:23:82:7f:35; fixed-address 128.153.144.25; }
host cosi-06.cslabs.clarkson.edu { hardware ethernet 30:9c:23:82:7f:42; fixed-address 128.153.144.26; }
host cosi-07.cslabs.clarkson.edu { hardware ethernet 30:9c:23:82:7f:3b; fixed-address 128.153.144.27; }
host cosi-08.cslabs.clarkson.edu { hardware ethernet 30:9c:23:82:7f:2a; fixed-address 128.153.144.28; }
host jesubelle.cslabs.clarkson.edu { hardware ethernet 0c:9d:92:66:ab:8b; fixed-address 128.153.144.32; }
host samantha.cslabs.clarkson.edu { hardware ethernet 0c:9d:92:66:ad:e9; fixed-address 128.153.144.33; }
host beastvr.cslabs.clarkson.edu { hardware ethernet 90:2b:34:3f:b4:1b; fixed-address 128.153.144.30; }
host UBNT.cslabs.clarkson.edu { hardware ethernet 80:2a:a8:93:8e:60; fixed-address 128.153.144.31; }
}
# DHCP Services
group {
# host jeff.cslabs.clarkson.edu { hardware ethernet 00:25:90:6b:46:e2; fixed-address 128.153.144.32; }
# host geoff.cslabs.clarkson.edu { hardware ethernet 00:25:90:6a:d6:4e; fixed-address 128.153.144.33; }
# host geoffry.cslabs.clarkson.edu { hardware ethernet 00:25:90:9b:fe:34; fixed-address 128.153.144.34; }
# host animal.cslabs.clarkson.edu { hardware ethernet b8:97:5a:13:7e:80; fixed-address 128.153.144.35; }
host scannerpi.cslabs.clarkson.edu { hardware ethernet b8:27:eb:86:6f:99; fixed-address 128.153.145.101; }
host lightspi.cslabs.clarkson.edu { hardware ethernet b8:27:eb:12:30:a3; fixed-address 128.153.145.103; }
host tiamat.cslabs.clarkson.edu { hardware ethernet 00:02:c9:57:11:66; fixed-address 128.153.145.41; }
}
# ITL
group {
host itl00.cslabs.clarkson.edu { hardware ethernet 68:05:ca:22:63:fa; fixed-address 128.153.144.40; }
host itl01.cslabs.clarkson.edu { hardware ethernet 68:05:ca:22:4a:d6; fixed-address 128.153.144.41; }
host itl02.cslabs.clarkson.edu { hardware ethernet 68:05:ca:22:65:ee; fixed-address 128.153.144.42; }
host itl03.cslabs.clarkson.edu { hardware ethernet 68:05:ca:23:91:a3; fixed-address 128.153.144.43; }
host itl04.cslabs.clarkson.edu { hardware ethernet 68:05:ca:22:65:ea; fixed-address 128.153.144.44; }
host itl05.cslabs.clarkson.edu { hardware ethernet 68:05:ca:22:66:1c; fixed-address 128.153.144.45; }
host itl06.cslabs.clarkson.edu { hardware ethernet 68:05:ca:22:68:0f; fixed-address 128.153.144.46; }
host itl07.cslabs.clarkson.edu { hardware ethernet 68:05:ca:22:65:e5; fixed-address 128.153.144.47; }
host itl08.cslabs.clarkson.edu { hardware ethernet 68:05:ca:22:4a:d9; fixed-address 128.153.144.48; }
host itl09.cslabs.clarkson.edu { hardware ethernet 68:05:ca:23:8f:20; fixed-address 128.153.144.49; }
host itl10.cslabs.clarkson.edu { hardware ethernet 68:05:ca:22:65:ed; fixed-address 128.153.144.50; }
# TODO
host itl11.cslabs.clarkson.edu { hardware ethernet 00:00:00:00:00:00; fixed-address 128.153.144.51; }
host itl12.cslabs.clarkson.edu { hardware ethernet 68:05:ca:22:65:e3; fixed-address 128.153.144.52; }
host itl13.cslabs.clarkson.edu { hardware ethernet 68:05:ca:22:65:eb; fixed-address 128.153.144.53; }
host itl14.cslabs.clarkson.edu { hardware ethernet 68:05:ca:22:63:45; fixed-address 128.153.144.54; }
host itl15.cslabs.clarkson.edu { hardware ethernet 68:05:ca:22:60:aa; fixed-address 128.153.144.55; }
host itl16.cslabs.clarkson.edu { hardware ethernet 68:05:ca:22:65:e9; fixed-address 128.153.144.56; }
# TODO
host itl17.cslabs.clarkson.edu { hardware ethernet 00:00:00:00:00:00; fixed-address 128.153.144.57; }
host itl18.cslabs.clarkson.edu { hardware ethernet 68:05:ca:23:8c:91; fixed-address 128.153.144.58; }
host itl19.cslabs.clarkson.edu { hardware ethernet 68:05:ca:22:65:e6; fixed-address 128.153.144.59; }
host itl20.cslabs.clarkson.edu { hardware ethernet 68:05:ca:22:68:36; fixed-address 128.153.144.60; }
host itl21.cslabs.clarkson.edu { hardware ethernet 68:05:ca:22:66:1a; fixed-address 128.153.144.61; }
host itl22.cslabs.clarkson.edu { hardware ethernet 68:05:ca:22:65:ec; fixed-address 128.153.144.62; }
# this machine doesn't exist
# host itl23.cslabs.clarkson.edu { hardware ethernet 00:00:00:00:00:00; fixed-address 128.153.144.63; }
host itl24.cslabs.clarkson.edu { hardware ethernet 68:05:ca:22:66:1d; fixed-address 128.153.144.63; }
host itl25.cslabs.clarkson.edu { hardware ethernet 68:05:ca:22:5f:87; fixed-address 128.153.144.64; }
host itl26.cslabs.clarkson.edu { hardware ethernet 68:05:ca:22:65:e7; fixed-address 128.153.144.65; }
}
class "cosi-vpnc" {
match if (option agent.circuit-id) = "cosivpnc";
# Set the gateway here as well in case the OS ignores the default router, route regular second floor clients through Geoff
option rfc3442-classless-static-routes 0, 128, 153, 145, 1, 32, 128, 153, 145, 50, 128, 153, 145, 51;
option ms-classless-static-routes 0, 128, 153, 145, 1, 32, 128, 153, 145, 50, 128, 153, 145, 51;
if substring (option vendor-class-identifier, 0, 9) = "PXEClient" {
allow booting;
allow bootp;
next-server 128.153.145.70;
filename "/pxelinux.0";
}
}
class "cosi-vpns" {
match if (option agent.circuit-id) = "cosivpns";
# Set the gateway here as well in case the OS ignores the default router, route regular second floor clients through Geoff's VM
option rfc3442-classless-static-routes 0, 128, 153, 145, 1, 32, 128, 153, 145, 50, 128, 153, 145, 52;
option ms-classless-static-routes 0, 128, 153, 145, 1, 32, 128, 153, 145, 50, 128, 153, 145, 52;
}
class "pxeclients" {
match if substring (option vendor-class-identifier, 0, 9) = "PXEClient";
allow booting;
allow bootp;
# Old Bacon defaults
# next-server 128.153.145.10;
# FOG:
next-server 128.153.145.204;
if exists user-class and option user-class = "iPXE" and (option arch = 00:09 or option arch = 00:07) {
# Old Bacon defaults
# filename "/default.ipxe";
# FOG:
filename "/ipxe.efi";
} elsif option arch = 00:09 or option arch = 00:07 {
# Old Bacon defaults
# filename "/ipxe.efi";
# FOG:
filename "/ipxe.efi";
} else {
# Old Bacon defaults
# filename "/pxelinux.0";
# FOG:
filename "/undionly.kpxe";
}
}
class "Apple-Intel-Netboot" {
match if substring (option vendor-class-identifier, 0, 14) = "AAPLBSDPC/i386";
option dhcp-parameter-request-list 1,3,17,43,60;
if (option dhcp-message-type = 8) {
option vendor-class-identifier "AAPLBSDPC";
if (substring(option vendor-encapsulated-options, 0, 3) = 01:01:01) {
# BSDP List
option vendor-encapsulated-options 01:01:01:04:02:80:00:07:04:81:00:05:2a:09:0D:81:00:05:2a:08:69:50:58:45:2d:46:4f:47;
}
elsif (substring(option vendor-encapsulated-options, 0, 3) = 01:01:02) {
# BSDP Select
option vendor-encapsulated-options 01:01:02:08:04:81:00:05:2a:82:0a:4e:65:74:42:6f:6f:74:30:30:31;
filename "/ipxe.efi";
next-server 128.153.145.10;
}
}
}
class "voip-GrandStream" {
match if substring (option vendor-class-identifier, 0, 10) = "Grandstream";
option vlan-id "5";
}
}
}