summaryrefslogtreecommitdiff
path: root/dht/vnet/core-build.sh
blob: 1b8f3d8abdee63f056e4ece8c8d11e61a658dedd (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
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
#!/bin/sh

set -x

buildveths() {
    ip link add ve0 type veth peer name vep0
    ip link add ve1 type veth peer name vep1
    ip link add ve2 type veth peer name vep2
    ip link add ve3 type veth peer name vep3
    ip link add ve4 type veth peer name vep4
    ip link add ve5 type veth peer name vep5
    ip link add ve6 type veth peer name vep6
    ip link add ve7 type veth peer name vep7
    ip link add ve8 type veth peer name vep8
    ip link add ve9 type veth peer name vep9
    ip link add veA type veth peer name vepA
    ip link add veB type veth peer name vepB
    ip link add veC type veth peer name vepC
    ip link add veD type veth peer name vepD
    ip link add veE type veth peer name vepE
    ip link add veF type veth peer name vepF

    ip netns add vep0; ip link set vep0 netns vep0
    ip netns add vep1; ip link set vep1 netns vep1
    ip netns add vep2; ip link set vep2 netns vep2
    ip netns add vep3; ip link set vep3 netns vep3
    ip netns add vep4; ip link set vep4 netns vep4
    ip netns add vep5; ip link set vep5 netns vep5
    ip netns add vep6; ip link set vep6 netns vep6
    ip netns add vep7; ip link set vep7 netns vep7
    ip netns add vep8; ip link set vep8 netns vep8
    ip netns add vep9; ip link set vep9 netns vep9
    ip netns add vepA; ip link set vepA netns vepA
    ip netns add vepB; ip link set vepB netns vepB
    ip netns add vepC; ip link set vepC netns vepC
    ip netns add vepD; ip link set vepD netns vepD
    ip netns add vepE; ip link set vepE netns vepE
    ip netns add vepF; ip link set vepF netns vepF
}

buildveths

iface=$(ip route | awk '/^default/{ if ($4 == "dev") print($5); }')
iface=${iface:-wlan0}
num=$(ip addr show $iface | sed -n '/\s\+inet 192/ s/\s\+inet 192\.168\.[0-9]*\.\([0-9]*\).*$/\1/ p')
num=${num:-88}

ip addr add 60.$num.99.98/31 dev ve0
ip addr add 61.$num.99.98/31 dev ve1
ip addr add 62.$num.99.98/31 dev ve2
ip addr add 63.$num.99.98/31 dev ve3
ip addr add 64.$num.99.98/31 dev ve4
ip addr add 65.$num.99.98/31 dev ve5
ip addr add 66.$num.99.98/31 dev ve6
ip addr add 67.$num.99.98/31 dev ve7
ip addr add 68.$num.99.98/31 dev ve8
ip addr add 69.$num.99.98/31 dev ve9
ip addr add 70.$num.99.98/31 dev veA
ip addr add 71.$num.99.98/31 dev veB
ip addr add 72.$num.99.98/31 dev veC
ip addr add 73.$num.99.98/31 dev veD
ip addr add 74.$num.99.98/31 dev veE
ip addr add 75.$num.99.98/31 dev veF

ip link set up dev ve0
ip link set up dev ve1
ip link set up dev ve2
ip link set up dev ve3
ip link set up dev ve4
ip link set up dev ve5
ip link set up dev ve6
ip link set up dev ve7
ip link set up dev ve8
ip link set up dev ve9
ip link set up dev veA
ip link set up dev veB
ip link set up dev veC
ip link set up dev veD
ip link set up dev veE
ip link set up dev veF


nsenter --net=/var/run/netns/vep0 ip addr add 60.$num.99.99/31 dev vep0
nsenter --net=/var/run/netns/vep1 ip addr add 61.$num.99.99/31 dev vep1
nsenter --net=/var/run/netns/vep2 ip addr add 62.$num.99.99/31 dev vep2
nsenter --net=/var/run/netns/vep3 ip addr add 63.$num.99.99/31 dev vep3
nsenter --net=/var/run/netns/vep4 ip addr add 64.$num.99.99/31 dev vep4
nsenter --net=/var/run/netns/vep5 ip addr add 65.$num.99.99/31 dev vep5
nsenter --net=/var/run/netns/vep6 ip addr add 66.$num.99.99/31 dev vep6
nsenter --net=/var/run/netns/vep7 ip addr add 67.$num.99.99/31 dev vep7
nsenter --net=/var/run/netns/vep8 ip addr add 68.$num.99.99/31 dev vep8
nsenter --net=/var/run/netns/vep9 ip addr add 69.$num.99.99/31 dev vep9
nsenter --net=/var/run/netns/vepA ip addr add 70.$num.99.99/31 dev vepA
nsenter --net=/var/run/netns/vepB ip addr add 71.$num.99.99/31 dev vepB
nsenter --net=/var/run/netns/vepC ip addr add 72.$num.99.99/31 dev vepC
nsenter --net=/var/run/netns/vepD ip addr add 73.$num.99.99/31 dev vepD
nsenter --net=/var/run/netns/vepE ip addr add 74.$num.99.99/31 dev vepE
nsenter --net=/var/run/netns/vepF ip addr add 75.$num.99.99/31 dev vepF

nsenter --net=/var/run/netns/vep0 ip link set up dev vep0
nsenter --net=/var/run/netns/vep1 ip link set up dev vep1
nsenter --net=/var/run/netns/vep2 ip link set up dev vep2
nsenter --net=/var/run/netns/vep3 ip link set up dev vep3
nsenter --net=/var/run/netns/vep4 ip link set up dev vep4
nsenter --net=/var/run/netns/vep5 ip link set up dev vep5
nsenter --net=/var/run/netns/vep6 ip link set up dev vep6
nsenter --net=/var/run/netns/vep7 ip link set up dev vep7
nsenter --net=/var/run/netns/vep8 ip link set up dev vep8
nsenter --net=/var/run/netns/vep9 ip link set up dev vep9
nsenter --net=/var/run/netns/vepA ip link set up dev vepA
nsenter --net=/var/run/netns/vepB ip link set up dev vepB
nsenter --net=/var/run/netns/vepC ip link set up dev vepC
nsenter --net=/var/run/netns/vepD ip link set up dev vepD
nsenter --net=/var/run/netns/vepE ip link set up dev vepE
nsenter --net=/var/run/netns/vepF ip link set up dev vepF

nsenter --net=/var/run/netns/vep0 ip route add default via 60.$num.99.98
nsenter --net=/var/run/netns/vep1 ip route add default via 61.$num.99.98
nsenter --net=/var/run/netns/vep2 ip route add default via 62.$num.99.98
nsenter --net=/var/run/netns/vep3 ip route add default via 63.$num.99.98
nsenter --net=/var/run/netns/vep4 ip route add default via 64.$num.99.98
nsenter --net=/var/run/netns/vep5 ip route add default via 65.$num.99.98
nsenter --net=/var/run/netns/vep6 ip route add default via 66.$num.99.98
nsenter --net=/var/run/netns/vep7 ip route add default via 67.$num.99.98
nsenter --net=/var/run/netns/vep8 ip route add default via 68.$num.99.98
nsenter --net=/var/run/netns/vep9 ip route add default via 69.$num.99.98
nsenter --net=/var/run/netns/vepA ip route add default via 70.$num.99.98
nsenter --net=/var/run/netns/vepB ip route add default via 71.$num.99.98
nsenter --net=/var/run/netns/vepC ip route add default via 72.$num.99.98
nsenter --net=/var/run/netns/vepD ip route add default via 73.$num.99.98
nsenter --net=/var/run/netns/vepE ip route add default via 74.$num.99.98
nsenter --net=/var/run/netns/vepF ip route add default via 75.$num.99.98

nsenter --net=/var/run/netns/vep0 ip addr add 127.0.0.1/8 dev lo
nsenter --net=/var/run/netns/vep1 ip addr add 127.0.0.1/8 dev lo
nsenter --net=/var/run/netns/vep2 ip addr add 127.0.0.1/8 dev lo
nsenter --net=/var/run/netns/vep3 ip addr add 127.0.0.1/8 dev lo
nsenter --net=/var/run/netns/vep4 ip addr add 127.0.0.1/8 dev lo
nsenter --net=/var/run/netns/vep5 ip addr add 127.0.0.1/8 dev lo
nsenter --net=/var/run/netns/vep6 ip addr add 127.0.0.1/8 dev lo
nsenter --net=/var/run/netns/vep7 ip addr add 127.0.0.1/8 dev lo
nsenter --net=/var/run/netns/vep8 ip addr add 127.0.0.1/8 dev lo
nsenter --net=/var/run/netns/vep9 ip addr add 127.0.0.1/8 dev lo
nsenter --net=/var/run/netns/vepA ip addr add 127.0.0.1/8 dev lo
nsenter --net=/var/run/netns/vepB ip addr add 127.0.0.1/8 dev lo
nsenter --net=/var/run/netns/vepC ip addr add 127.0.0.1/8 dev lo
nsenter --net=/var/run/netns/vepD ip addr add 127.0.0.1/8 dev lo
nsenter --net=/var/run/netns/vepE ip addr add 127.0.0.1/8 dev lo
nsenter --net=/var/run/netns/vepF ip addr add 127.0.0.1/8 dev lo

nsenter --net=/var/run/netns/vep0 ip addr add ::1/128 dev lo
nsenter --net=/var/run/netns/vep1 ip addr add ::1/128 dev lo
nsenter --net=/var/run/netns/vep2 ip addr add ::1/128 dev lo
nsenter --net=/var/run/netns/vep3 ip addr add ::1/128 dev lo
nsenter --net=/var/run/netns/vep4 ip addr add ::1/128 dev lo
nsenter --net=/var/run/netns/vep5 ip addr add ::1/128 dev lo
nsenter --net=/var/run/netns/vep6 ip addr add ::1/128 dev lo
nsenter --net=/var/run/netns/vep7 ip addr add ::1/128 dev lo
nsenter --net=/var/run/netns/vep8 ip addr add ::1/128 dev lo
nsenter --net=/var/run/netns/vep9 ip addr add ::1/128 dev lo
nsenter --net=/var/run/netns/vepA ip addr add ::1/128 dev lo
nsenter --net=/var/run/netns/vepB ip addr add ::1/128 dev lo
nsenter --net=/var/run/netns/vepC ip addr add ::1/128 dev lo
nsenter --net=/var/run/netns/vepD ip addr add ::1/128 dev lo
nsenter --net=/var/run/netns/vepE ip addr add ::1/128 dev lo
nsenter --net=/var/run/netns/vepF ip addr add ::1/128 dev lo

nsenter --net=/var/run/netns/vep0 ip link set up dev lo
nsenter --net=/var/run/netns/vep1 ip link set up dev lo
nsenter --net=/var/run/netns/vep2 ip link set up dev lo
nsenter --net=/var/run/netns/vep3 ip link set up dev lo
nsenter --net=/var/run/netns/vep4 ip link set up dev lo
nsenter --net=/var/run/netns/vep5 ip link set up dev lo
nsenter --net=/var/run/netns/vep6 ip link set up dev lo
nsenter --net=/var/run/netns/vep7 ip link set up dev lo
nsenter --net=/var/run/netns/vep8 ip link set up dev lo
nsenter --net=/var/run/netns/vep9 ip link set up dev lo
nsenter --net=/var/run/netns/vepA ip link set up dev lo
nsenter --net=/var/run/netns/vepB ip link set up dev lo
nsenter --net=/var/run/netns/vepC ip link set up dev lo
nsenter --net=/var/run/netns/vepD ip link set up dev lo
nsenter --net=/var/run/netns/vepE ip link set up dev lo
nsenter --net=/var/run/netns/vepF ip link set up dev lo