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.

163 lines
8.1 KiB

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