blob: 0fadb2aa54f04ec5c6c1bf3a4468a4ae5f6f523a (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
|
#!/bin/sh
set -e
DISTS=$(perl -e 'use YAML::Syck;
$y = LoadFile("pgapt-jobs.yaml");
@d = grep { exists $_->{yamltemplates} } @$y;
print "@{$d[0]->{yamltemplates}->{dist_axis}->{values}}";'
)
prefix="10.1"
net=1
for dist in $DISTS; do
for bits in 64 32; do
ns="newpid$dist$bits"
veth="veth$dist$bits"
ceth="ceth$dist$bits"
ip netns add $ns 2> /dev/null || :
ip link del $veth 2> /dev/null || :
ip link add $veth type veth peer name $ceth
ip link set $ceth netns $ns
ip a add $prefix.$net.1/24 dev $veth
ip link set $veth up
ip netns exec $ns ip link set lo up
ip netns exec $ns ip a add $prefix.$net.2/24 dev $ceth
ip netns exec $ns ip link set $ceth up
ip netns exec $ns ip r add default via $prefix.$net.1
net=$((net + 1))
done
done
iptables -vnL FORWARD | grep -q 'veth+' || \
iptables -A FORWARD -i veth+ -j ACCEPT
iptables -t nat -vnL POSTROUTING | grep -q 'MASQUERADE' || \
iptables -t nat -A POSTROUTING -o wlan2 -j MASQUERADE
|