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.

182 lines
11 KiB

4 years ago
4 years ago
4 years ago
5 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
3 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
5 years ago
4 years ago
5 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
5 years ago
5 years ago
4 years ago
  1. #
  2. # /etc/dhcp/common4.conf for common DHCP configurations between both servers
  3. #
  4. # gateway
  5. option routers 128.153.145.1;
  6. # subnet mask
  7. option subnet-mask 255.255.254.0;
  8. # COSI subdomain (so talks/ works for example)
  9. option domain-name "cslabs.clarkson.edu";
  10. # domain name servers (Windows devices will round robin these btw)
  11. option domain-name-servers 128.153.145.3,128.153.145.4,1.1.1.1;
  12. # ntp servers (these are tick.clarkson.edu and tock.clarkson.edu)
  13. option ntp-servers 128.153.2.253,128.153.5.253;
  14. # lease times
  15. default-lease-time 43200;
  16. max-lease-time 86400;
  17. # ntp offset for timezone
  18. # UTC +5
  19. option time-offset -18000;
  20. # UTC +4
  21. # option time-offset -14400;
  22. # this is the only DHCP server for this range
  23. authoritative;
  24. option arch code 93 = unsigned integer 16;
  25. option rfc3442-classless-static-routes code 121 = array of integer 8;
  26. option ms-classless-static-routes code 249 = array of integer 8;
  27. option vlan-id code 132 = text;
  28. subnet 128.153.144.0 netmask 255.255.254.0 {
  29. pool {
  30. range 128.153.144.100 128.153.144.254;
  31. failover peer "dhcp-failover";
  32. # COSI
  33. group {
  34. host cthulhu.cslabs.clarkson.edu { hardware ethernet 4c:cc:6a:fa:dd:86; fixed-address 128.153.144.20; }
  35. host cosi-01.cslabs.clarkson.edu { hardware ethernet fc:aa:14:99:ca:eb; fixed-address 128.153.144.21; }
  36. host cosi-02.cslabs.clarkson.edu { hardware ethernet fc:aa:14:9c:64:9c; fixed-address 128.153.144.22; }
  37. host cosi-03.cslabs.clarkson.edu { hardware ethernet fc:aa:14:9d:2c:bf; fixed-address 128.153.144.23; }
  38. host cosi-04.cslabs.clarkson.edu { hardware ethernet fc:aa:14:9d:9b:40; fixed-address 128.153.144.24; }
  39. host cosi-05.cslabs.clarkson.edu { hardware ethernet 30:9c:23:82:7f:35; fixed-address 128.153.144.25; }
  40. host cosi-06.cslabs.clarkson.edu { hardware ethernet 30:9c:23:82:7f:42; fixed-address 128.153.144.26; }
  41. host cosi-07.cslabs.clarkson.edu { hardware ethernet 30:9c:23:82:7f:3b; fixed-address 128.153.144.27; }
  42. host cosi-08.cslabs.clarkson.edu { hardware ethernet 30:9c:23:82:7f:2a; fixed-address 128.153.144.28; }
  43. host jesubelle.cslabs.clarkson.edu { hardware ethernet 0c:9d:92:66:ab:8b; fixed-address 128.153.144.32; }
  44. host samantha.cslabs.clarkson.edu { hardware ethernet 0c:9d:92:66:ad:e9; fixed-address 128.153.144.33; }
  45. host beastvr.cslabs.clarkson.edu { hardware ethernet 90:2b:34:3f:b4:1b; fixed-address 128.153.144.30; }
  46. host UBNT.cslabs.clarkson.edu { hardware ethernet 80:2a:a8:93:8e:60; fixed-address 128.153.144.31; }
  47. }
  48. # DHCP Services
  49. group {
  50. # host jeff.cslabs.clarkson.edu { hardware ethernet 00:25:90:6b:46:e2; fixed-address 128.153.144.32; }
  51. # host geoff.cslabs.clarkson.edu { hardware ethernet 00:25:90:6a:d6:4e; fixed-address 128.153.144.33; }
  52. # host geoffry.cslabs.clarkson.edu { hardware ethernet 00:25:90:9b:fe:34; fixed-address 128.153.144.34; }
  53. # host animal.cslabs.clarkson.edu { hardware ethernet b8:97:5a:13:7e:80; fixed-address 128.153.144.35; }
  54. host scannerpi.cslabs.clarkson.edu { hardware ethernet b8:27:eb:86:6f:99; fixed-address 128.153.145.101; }
  55. host lightspi.cslabs.clarkson.edu { hardware ethernet b8:27:eb:12:30:a3; fixed-address 128.153.145.103; }
  56. host tiamat.cslabs.clarkson.edu { hardware ethernet 00:02:c9:57:11:66; fixed-address 128.153.145.41; }
  57. }
  58. # ITL
  59. group {
  60. host itl00.cslabs.clarkson.edu { hardware ethernet a0:d3:c1:29:67:8b; fixed-address 128.153.144.40; }
  61. host itl01.cslabs.clarkson.edu { hardware ethernet 40:a8:f0:41:83:16; fixed-address 128.153.144.41; }
  62. host itl02.cslabs.clarkson.edu { hardware ethernet a0:d3:c1:29:67:5f; fixed-address 128.153.144.42; }
  63. host itl03.cslabs.clarkson.edu { hardware ethernet a0:d3:c1:29:f9:f9; fixed-address 128.153.144.43; }
  64. host itl04.cslabs.clarkson.edu { hardware ethernet a0:d3:c1:33:29:55; fixed-address 128.153.144.44; }
  65. host itl05.cslabs.clarkson.edu { hardware ethernet a0:d3:c1:33:29:05; fixed-address 128.153.144.45; }
  66. host itl06.cslabs.clarkson.edu { hardware ethernet a0:d3:c1:29:67:cb; fixed-address 128.153.144.46; }
  67. host itl07.cslabs.clarkson.edu { hardware ethernet a0:d3:c1:29:67:2f; fixed-address 128.153.144.47; }
  68. host itl08.cslabs.clarkson.edu { hardware ethernet 40:a8:f0:41:83:72; fixed-address 128.153.144.48; }
  69. host itl09.cslabs.clarkson.edu { hardware ethernet a0:d3:c1:33:29:51; fixed-address 128.153.144.49; }
  70. host itl10.cslabs.clarkson.edu { hardware ethernet 40:a8:f0:41:83:0a; fixed-address 128.153.144.50; }
  71. host itl11.cslabs.clarkson.edu { hardware ethernet 40:a8:f0:41:83:cf; fixed-address 128.153.144.51; }
  72. host itl12.cslabs.clarkson.edu { hardware ethernet a0:d3:c1:29:67:1a; fixed-address 128.153.144.52; }
  73. host itl13.cslabs.clarkson.edu { hardware ethernet 40:a8:f0:41:83:d5; fixed-address 128.153.144.53; }
  74. host itl14.cslabs.clarkson.edu { hardware ethernet a0:d3:c1:29:67:90; fixed-address 128.153.144.54; }
  75. host itl15.cslabs.clarkson.edu { hardware ethernet a0:d3:c1:33:29:45; fixed-address 128.153.144.55; }
  76. host itl16.cslabs.clarkson.edu { hardware ethernet a0:d3:c1:29:69:21; fixed-address 128.153.144.56; }
  77. host itl17.cslabs.clarkson.edu { hardware ethernet 40:a8:f0:41:83:8d; fixed-address 128.153.144.57; }
  78. host itl18.cslabs.clarkson.edu { hardware ethernet a0:d3:c1:33:28:70; fixed-address 128.153.144.58; }
  79. host itl19.cslabs.clarkson.edu { hardware ethernet a0:d3:c1:29:f9:ff; fixed-address 128.153.144.59; }
  80. host itl20.cslabs.clarkson.edu { hardware ethernet a0:d3:c1:29:fa:ad; fixed-address 128.153.144.60; }
  81. host itl21.cslabs.clarkson.edu { hardware ethernet 40:a8:f0:41:83:bb; fixed-address 128.153.144.61; }
  82. host itl22.cslabs.clarkson.edu { hardware ethernet a0:d3:c1:33:28:74; fixed-address 128.153.144.62; }
  83. host itl23.cslabs.clarkson.edu { hardware ethernet 40:a8:f0:41:83:4d; fixed-address 128.153.144.63; }
  84. host itl24.cslabs.clarkson.edu { hardware ethernet a0:d3:c1:29:67:12; fixed-address 128.153.144.64; }
  85. host itl25.cslabs.clarkson.edu { hardware ethernet 40:a8:f0:41:83:d0; fixed-address 128.153.144.65; }
  86. # host itl00.cslabs.clarkson.edu { hardware ethernet a0:d3:c1:29:67:8b; fixed-address 128.153.144.40; }
  87. # host itl01.cslabs.clarkson.edu { hardware ethernet a0:d3:c1:29:f9:f9; fixed-address 128.153.144.41; }
  88. # host itl02.cslabs.clarkson.edu { hardware ethernet a0:d3:c1:33:29:55; fixed-address 128.153.144.42; }
  89. # host itl03.cslabs.clarkson.edu { hardware ethernet a0:d3:c1:33:29:05; fixed-address 128.153.144.43; }
  90. # host itl04.cslabs.clarkson.edu { hardware ethernet 40:a8:f0:41:83:16; fixed-address 128.153.144.44; }
  91. # host itl05.cslabs.clarkson.edu { hardware ethernet a0:d3:c1:29:67:5f; fixed-address 128.153.144.45; }
  92. # host itl06.cslabs.clarkson.edu { hardware ethernet 40:a8:f0:41:83:72; fixed-address 128.153.144.46; }
  93. # host itl07.cslabs.clarkson.edu { hardware ethernet a0:d3:c1:33:29:51; fixed-address 128.153.144.47; }
  94. # host itl08.cslabs.clarkson.edu { hardware ethernet 40:a8:f0:41:83:0a; fixed-address 128.153.144.48; }
  95. # host itl09.cslabs.clarkson.edu { hardware ethernet 40:a8:f0:41:83:cf; fixed-address 128.153.144.49; }
  96. # host itl10.cslabs.clarkson.edu { hardware ethernet a0:d3:c1:29:67:cb; fixed-address 128.153.144.50; }
  97. # host itl11.cslabs.clarkson.edu { hardware ethernet a0:d3:c1:29:67:2f; fixed-address 128.153.144.51; }
  98. # host itl12.cslabs.clarkson.edu { hardware ethernet a0:d3:c1:29:67:1a; fixed-address 128.153.144.52; }
  99. # host itl13.cslabs.clarkson.edu { hardware ethernet 40:a8:f0:41:83:d5; fixed-address 128.153.144.53; }
  100. # host itl14.cslabs.clarkson.edu { hardware ethernet a0:d3:c1:29:67:90; fixed-address 128.153.144.54; }
  101. # host itl15.cslabs.clarkson.edu { hardware ethernet a0:d3:c1:33:29:45; fixed-address 128.153.144.55; }
  102. # host itl16.cslabs.clarkson.edu { hardware ethernet a0:d3:c1:29:69:21; fixed-address 128.153.144.56; }
  103. # host itl17.cslabs.clarkson.edu { hardware ethernet 40:a8:f0:41:83:8d; fixed-address 128.153.144.57; }
  104. # host itl18.cslabs.clarkson.edu { hardware ethernet a0:d3:c1:33:28:70; fixed-address 128.153.144.58; }
  105. # host itl19.cslabs.clarkson.edu { hardware ethernet a0:d3:c1:29:f9:ff; fixed-address 128.153.144.59; }
  106. # host itl20.cslabs.clarkson.edu { hardware ethernet a0:d3:c1:29:fa:ad; fixed-address 128.153.144.60; }
  107. # host itl21.cslabs.clarkson.edu { hardware ethernet 40:a8:f0:41:83:bb; fixed-address 128.153.144.61; }
  108. # host itl22.cslabs.clarkson.edu { hardware ethernet a0:d3:c1:33:28:74; fixed-address 128.153.144.62; }
  109. # host itl23.cslabs.clarkson.edu { hardware ethernet 40:a8:f0:41:83:4d; fixed-address 128.153.144.63; }
  110. # host itl24.cslabs.clarkson.edu { hardware ethernet a0:d3:c1:29:67:12; fixed-address 128.153.144.64; }
  111. # host itl25.cslabs.clarkson.edu { hardware ethernet 40:a8:f0:41:83:d0; fixed-address 128.153.144.65; }
  112. }
  113. class "cosi-vpnc" {
  114. match if (option agent.circuit-id) = "cosivpnc";
  115. # Set the gateway here as well in case the OS ignores the default router, route regular second floor clients through Geoff
  116. option rfc3442-classless-static-routes 0, 128, 153, 145, 1, 32, 128, 153, 145, 50, 128, 153, 145, 51;
  117. option ms-classless-static-routes 0, 128, 153, 145, 1, 32, 128, 153, 145, 50, 128, 153, 145, 51;
  118. if substring (option vendor-class-identifier, 0, 9) = "PXEClient" {
  119. allow booting;
  120. allow bootp;
  121. next-server 128.153.145.70;
  122. filename "/pxelinux.0";
  123. }
  124. }
  125. class "cosi-vpns" {
  126. match if (option agent.circuit-id) = "cosivpns";
  127. # Set the gateway here as well in case the OS ignores the default router, route regular second floor clients through Geoff's VM
  128. option rfc3442-classless-static-routes 0, 128, 153, 145, 1, 32, 128, 153, 145, 50, 128, 153, 145, 52;
  129. option ms-classless-static-routes 0, 128, 153, 145, 1, 32, 128, 153, 145, 50, 128, 153, 145, 52;
  130. }
  131. class "pxeclients" {
  132. match if substring (option vendor-class-identifier, 0, 9) = "PXEClient";
  133. allow booting;
  134. allow bootp;
  135. if exists user-class and option user-class = "iPXE" and (option arch = 00:09 or option arch = 00:07) {
  136. next-server 128.153.145.10;
  137. filename "/default.ipxe";
  138. } elsif option arch = 00:09 or option arch = 00:07 {
  139. next-server 128.153.145.10;
  140. filename "/ipxe.efi";
  141. } else {
  142. next-server 128.153.145.10;
  143. filename "/pxelinux.0";
  144. }
  145. }
  146. class "Apple-Intel-Netboot" {
  147. match if substring (option vendor-class-identifier, 0, 14) = "AAPLBSDPC/i386";
  148. option dhcp-parameter-request-list 1,3,17,43,60;
  149. if (option dhcp-message-type = 8) {
  150. option vendor-class-identifier "AAPLBSDPC";
  151. if (substring(option vendor-encapsulated-options, 0, 3) = 01:01:01) {
  152. # BSDP List
  153. 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;
  154. }
  155. elsif (substring(option vendor-encapsulated-options, 0, 3) = 01:01:02) {
  156. # BSDP Select
  157. 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;
  158. filename "/ipxe.efi";
  159. next-server 128.153.145.10;
  160. }
  161. }
  162. }
  163. class "voip-GrandStream" {
  164. match if substring (option vendor-class-identifier, 0, 10) = "Grandstream";
  165. option vlan-id "5";
  166. }
  167. }
  168. }