@cryptotaxi247 / infra / commits / fe56b10f

* Udev no longer assigns persistent names to network devices, so we have to do it ourselves :-( Use "internal" and "external" instead of eth0 and eth1.

* Udev no longer assigns persistent names to network devices, so we have to do it ourselves :-( Use "internal" and "external" instead of eth0 and eth1. svn path=/configurations/trunk/tud/; revision=34635

Eelco Dolstra committed Oct 26, 2012 at 19:28 UTC fe56b10f30ad9761a048fc6c21ac5fe9af3bb944
1 file changed +19 -13
cartman.nix
+19 -13
@@ -172,11 +172,11 @@ rec {
172 domain = "buildfarm";
173
174 interfaces = [
175 - { name = "eth1";
175 + { name = "external";
176 ipAddress = myIP;
177 subnetMask = "255.255.254.0";
178 }
179 - { name = "eth0";
179 + { name = "internal";
180 ipAddress = (findSingle (m: m.hostName == "cartman") {} {} machines).ipAddress;
181 subnetMask = "22";
182 }
@@ -202,7 +202,7 @@ rec {
202
203 nat.enable = true;
204 nat.internalIPs = "192.168.1.0/22";
205 - nat.externalInterface = "eth1";
205 + nat.externalInterface = "external";
206 nat.externalIP = myIP;
207
208 localCommands =
@@ -213,9 +213,9 @@ rec {
213 ${pkgs.iptables}/sbin/iptables -t nat -A PREROUTING -p tcp -d ${myIP} --dport 2222 -j DNAT --to 192.168.1.26:22
214
215 # Cleanup.
216 - ip -6 route flush dev sixxs
217 - ip link set dev sixxs down
218 - ip tunnel del sixxs
216 + ip -6 route flush dev sixxs || true
217 + ip link set dev sixxs down || true
218 + ip tunnel del sixxs || true
219
220 # Set up a SixXS tunnel for IPv6 connectivity.
221 ip tunnel add sixxs mode sit local ${myIP} remote 192.87.102.107 ttl 64
@@ -224,27 +224,33 @@ rec {
224 ip -6 route add default via 2001:610:600:88d::1 dev sixxs
225
226 # Discard all traffic to networks in our prefix that don't exist.
227 - ip -6 route add 2001:610:685::/48 dev lo
227 + ip -6 route add 2001:610:685::/48 dev lo || true
228
229 # Create a local network (prefix:1::/64).
230 - ip -6 addr add 2001:610:685:1::1/64 dev eth0
230 + ip -6 addr add 2001:610:685:1::1/64 dev internal || true
231
232 # Forward traffic to our Nova cloud to "stan".
233 - ip -6 route add 2001:610:685:2::/64 via 2001:610:685:1:222:19ff:fe55:bf2e
233 + ip -6 route add 2001:610:685:2::/64 via 2001:610:685:1:222:19ff:fe55:bf2e || true
234
235 # Amazon MTurk experiment.
236 - ${pkgs.iptables}/sbin/iptables -t nat -A PREROUTING -p tcp -d ${myIP} --dport 5998 -j DNAT --to 192.168.1.26:5998
237 - ${pkgs.iptables}/sbin/iptables -t nat -A PREROUTING -p tcp -d ${myIP} --dport 5999 -j DNAT --to 192.168.1.26:5999
236 + #${pkgs.iptables}/sbin/iptables -t nat -A PREROUTING -p tcp -d ${myIP} --dport 5998 -j DNAT --to 192.168.1.26:5998
237 + #${pkgs.iptables}/sbin/iptables -t nat -A PREROUTING -p tcp -d ${myIP} --dport 5999 -j DNAT --to 192.168.1.26:5999
238 '';
239 };
240
241 services = {
242
243 + udev.extraRules =
244 + ''
245 + ACTION=="add", SUBSYSTEM=="net", ATTR{address}=="00:19:d1:19:28:bf", NAME="external"
246 + ACTION=="add", SUBSYSTEM=="net", ATTR{address}=="00:04:23:df:f7:bf", NAME="internal"
247 + '';
248 +
249 radvd = {
250 enable = true;
251 config =
252 ''
247 - interface eth0 {
253 + interface internal {
254 AdvSendAdvert on;
255 prefix 2001:610:685:1::/64 { };
256 RDNSS 2001:610:685:1::1 { };
@@ -644,7 +650,7 @@ rec {
650 addn-hosts=${hostsFile}
651 expand-hosts
652 domain=buildfarm
647 - interface=eth0
653 + interface=internal
654
655 server=130.161.158.4
656 server=130.161.33.17