Lines Matching full:ip
18 # IP*_1 <=> IP*_2 <=> IP*_3 <=> IP*_4 (the top route)
21 # NS1/NS2 are configured to route packets to IPv*_GRE via IP*_8
27 # from IP*_SRC to IP*_DST can work is via IPv*_GRE
30 # that encaps the packets with an IP/GRE header to route to IPv*_GRE
36 # that encaps the packets with an IP/GRE header to route to IPv*_GRE
111 ip netns add "${NS1}"
112 ip netns add "${NS2}"
113 ip netns add "${NS3}"
116 ip netns exec ${NS1} sysctl -wq net.ipv4.conf.all.rp_filter=0
117 ip netns exec ${NS2} sysctl -wq net.ipv4.conf.all.rp_filter=0
118 ip netns exec ${NS3} sysctl -wq net.ipv4.conf.all.rp_filter=0
119 ip netns exec ${NS1} sysctl -wq net.ipv4.conf.default.rp_filter=0
120 ip netns exec ${NS2} sysctl -wq net.ipv4.conf.default.rp_filter=0
121 ip netns exec ${NS3} sysctl -wq net.ipv4.conf.default.rp_filter=0
124 ip netns exec ${NS1} sysctl -wq net.ipv6.conf.all.accept_dad=0
125 ip netns exec ${NS2} sysctl -wq net.ipv6.conf.all.accept_dad=0
126 ip netns exec ${NS3} sysctl -wq net.ipv6.conf.all.accept_dad=0
127 ip netns exec ${NS1} sysctl -wq net.ipv6.conf.default.accept_dad=0
128 ip netns exec ${NS2} sysctl -wq net.ipv6.conf.default.accept_dad=0
129 ip netns exec ${NS3} sysctl -wq net.ipv6.conf.default.accept_dad=0
131 ip link add veth1 type veth peer name veth2
132 ip link add veth3 type veth peer name veth4
133 ip link add veth5 type veth peer name veth6
134 ip link add veth7 type veth peer name veth8
136 ip netns exec ${NS2} sysctl -wq net.ipv4.ip_forward=1
137 ip netns exec ${NS2} sysctl -wq net.ipv6.conf.all.forwarding=1
139 ip link set veth1 netns ${NS1}
140 ip link set veth2 netns ${NS2}
141 ip link set veth3 netns ${NS2}
142 ip link set veth4 netns ${NS3}
143 ip link set veth5 netns ${NS1}
144 ip link set veth6 netns ${NS2}
145 ip link set veth7 netns ${NS2}
146 ip link set veth8 netns ${NS3}
149 ip -netns ${NS1} link add red type vrf table 1001
150 ip -netns ${NS1} link set red up
151 ip -netns ${NS1} route add table 1001 unreachable default metric 8192
152 ip -netns ${NS1} -6 route add table 1001 unreachable default metric 8192
153 ip -netns ${NS1} link set veth1 vrf red
154 ip -netns ${NS1} link set veth5 vrf red
156 ip -netns ${NS2} link add red type vrf table 1001
157 ip -netns ${NS2} link set red up
158 ip -netns ${NS2} route add table 1001 unreachable default metric 8192
159 ip -netns ${NS2} -6 route add table 1001 unreachable default metric 8192
160 ip -netns ${NS2} link set veth2 vrf red
161 ip -netns ${NS2} link set veth3 vrf red
162 ip -netns ${NS2} link set veth6 vrf red
163 ip -netns ${NS2} link set veth7 vrf red
167 ip -netns ${NS1} addr add ${IPv4_1}/24 dev veth1
168 ip -netns ${NS2} addr add ${IPv4_2}/24 dev veth2
169 ip -netns ${NS2} addr add ${IPv4_3}/24 dev veth3
170 ip -netns ${NS3} addr add ${IPv4_4}/24 dev veth4
171 ip -netns ${NS1} -6 addr add ${IPv6_1}/128 nodad dev veth1
172 ip -netns ${NS2} -6 addr add ${IPv6_2}/128 nodad dev veth2
173 ip -netns ${NS2} -6 addr add ${IPv6_3}/128 nodad dev veth3
174 ip -netns ${NS3} -6 addr add ${IPv6_4}/128 nodad dev veth4
177 ip -netns ${NS1} addr add ${IPv4_5}/24 dev veth5
178 ip -netns ${NS2} addr add ${IPv4_6}/24 dev veth6
179 ip -netns ${NS2} addr add ${IPv4_7}/24 dev veth7
180 ip -netns ${NS3} addr add ${IPv4_8}/24 dev veth8
181 ip -netns ${NS1} -6 addr add ${IPv6_5}/128 nodad dev veth5
182 ip -netns ${NS2} -6 addr add ${IPv6_6}/128 nodad dev veth6
183 ip -netns ${NS2} -6 addr add ${IPv6_7}/128 nodad dev veth7
184 ip -netns ${NS3} -6 addr add ${IPv6_8}/128 nodad dev veth8
186 ip -netns ${NS1} link set dev veth1 up
187 ip -netns ${NS2} link set dev veth2 up
188 ip -netns ${NS2} link set dev veth3 up
189 ip -netns ${NS3} link set dev veth4 up
190 ip -netns ${NS1} link set dev veth5 up
191 ip -netns ${NS2} link set dev veth6 up
192 ip -netns ${NS2} link set dev veth7 up
193 ip -netns ${NS3} link set dev veth8 up
195 # configure routes: IP*_SRC -> veth1/IP*_2 (= top route) default;
200 ip -netns ${NS1} route add ${IPv4_2}/32 dev veth1 ${VRF}
201 ip -netns ${NS1} route add default dev veth1 via ${IPv4_2} ${VRF} # go top by default
202 ip -netns ${NS1} -6 route add ${IPv6_2}/128 dev veth1 ${VRF}
203 ip -netns ${NS1} -6 route add default dev veth1 via ${IPv6_2} ${VRF} # go top by default
205 ip -netns ${NS1} route add ${IPv4_6}/32 dev veth5 ${VRF}
206 ip -netns ${NS1} route add ${IPv4_7}/32 dev veth5 via ${IPv4_6} ${VRF}
207 ip -netns ${NS1} route add ${IPv4_8}/32 dev veth5 via ${IPv4_6} ${VRF}
208 ip -netns ${NS1} -6 route add ${IPv6_6}/128 dev veth5 ${VRF}
209 ip -netns ${NS1} -6 route add ${IPv6_7}/128 dev veth5 via ${IPv6_6} ${VRF}
210 ip -netns ${NS1} -6 route add ${IPv6_8}/128 dev veth5 via ${IPv6_6} ${VRF}
214 ip -netns ${NS2} route add ${IPv4_1}/32 dev veth2 ${VRF}
215 ip -netns ${NS2} route add ${IPv4_4}/32 dev veth3 ${VRF}
216 ip -netns ${NS2} -6 route add ${IPv6_1}/128 dev veth2 ${VRF}
217 ip -netns ${NS2} -6 route add ${IPv6_4}/128 dev veth3 ${VRF}
219 ip -netns ${NS2} route add ${IPv4_5}/32 dev veth6 ${VRF}
220 ip -netns ${NS2} route add ${IPv4_8}/32 dev veth7 ${VRF}
221 ip -netns ${NS2} -6 route add ${IPv6_5}/128 dev veth6 ${VRF}
222 ip -netns ${NS2} -6 route add ${IPv6_8}/128 dev veth7 ${VRF}
226 ip -netns ${NS3} route add ${IPv4_3}/32 dev veth4
227 ip -netns ${NS3} route add ${IPv4_1}/32 dev veth4 via ${IPv4_3}
228 ip -netns ${NS3} route add ${IPv4_2}/32 dev veth4 via ${IPv4_3}
229 ip -netns ${NS3} -6 route add ${IPv6_3}/128 dev veth4
230 ip -netns ${NS3} -6 route add ${IPv6_1}/128 dev veth4 via ${IPv6_3}
231 ip -netns ${NS3} -6 route add ${IPv6_2}/128 dev veth4 via ${IPv6_3}
233 ip -netns ${NS3} route add ${IPv4_7}/32 dev veth8
234 ip -netns ${NS3} route add ${IPv4_5}/32 dev veth8 via ${IPv4_7}
235 ip -netns ${NS3} route add ${IPv4_6}/32 dev veth8 via ${IPv4_7}
236 ip -netns ${NS3} -6 route add ${IPv6_7}/128 dev veth8
237 ip -netns ${NS3} -6 route add ${IPv6_5}/128 dev veth8 via ${IPv6_7}
238 ip -netns ${NS3} -6 route add ${IPv6_6}/128 dev veth8 via ${IPv6_7}
241 ip -netns ${NS3} tunnel add gre_dev mode gre remote ${IPv4_1} local ${IPv4_GRE} ttl 255
242 ip -netns ${NS3} link set gre_dev up
243 ip -netns ${NS3} addr add ${IPv4_GRE} dev gre_dev
244 ip -netns ${NS1} route add ${IPv4_GRE}/32 dev veth5 via ${IPv4_6} ${VRF}
245 ip -netns ${NS2} route add ${IPv4_GRE}/32 dev veth7 via ${IPv4_8} ${VRF}
249 ip -netns ${NS3} -6 tunnel add name gre6_dev mode ip6gre remote ${IPv6_1} local ${IPv6_GRE} ttl 255
250 ip -netns ${NS3} link set gre6_dev up
251 ip -netns ${NS3} -6 addr add ${IPv6_GRE} nodad dev gre6_dev
252 ip -netns ${NS1} -6 route add ${IPv6_GRE}/128 dev veth5 via ${IPv6_6} ${VRF}
253 ip -netns ${NS2} -6 route add ${IPv6_GRE}/128 dev veth7 via ${IPv6_8} ${VRF}
267 ip netns del ${NS1} 2> /dev/null
268 ip netns del ${NS2} 2> /dev/null
269 ip netns del ${NS3} 2> /dev/null
276 ip -netns ${NS1} route del ${IPv4_GRE} dev veth5 ${VRF}
277 ip -netns ${NS2} route del ${IPv4_GRE} dev veth7 ${VRF}
278 ip -netns ${NS1} -6 route del ${IPv6_GRE}/128 dev veth5 ${VRF}
279 ip -netns ${NS2} -6 route del ${IPv6_GRE}/128 dev veth7 ${VRF}
284 ip -netns ${NS1} route add unreachable ${IPv4_GRE}/32 ${VRF}
285 ip -netns ${NS2} route add unreachable ${IPv4_GRE}/32 ${VRF}
286 ip -netns ${NS1} -6 route add unreachable ${IPv6_GRE}/128 ${VRF}
287 ip -netns ${NS2} -6 route add unreachable ${IPv6_GRE}/128 ${VRF}
297 ip netns exec ${NS1} ping -c 1 -W 1 -I veth1 ${IPv4_DST} 2>&1 > /dev/null
300 ip netns exec ${NS1} ping6 -c 1 -W 1 -I veth1 ${IPv6_DST} 2>&1 > /dev/null
331 ip netns exec ${NS3} bash -c \
335 ip netns exec ${NS3} bash -c \
345 ip netns exec ${NS1} bash -c \
368 ip -netns ${NS2} route del ${IPv4_DST}/32 dev veth3 ${VRF}
369 ip -netns ${NS2} -6 route del ${IPv6_DST}/128 dev veth3 ${VRF}
375 ip -netns ${NS1} route add ${IPv4_DST} encap bpf xmit obj \
377 ip -netns ${NS1} -6 route add ${IPv6_DST} encap bpf xmit obj \
380 ip -netns ${NS1} route add ${IPv4_DST} encap bpf xmit obj \
382 ip -netns ${NS1} -6 route add ${IPv6_DST} encap bpf xmit obj \
392 # source IP/device, which is easy to do with ping and hard with dd/nc.
426 ip -netns ${NS2} route del ${IPv4_DST}/32 dev veth3 ${VRF}
427 ip -netns ${NS2} -6 route del ${IPv6_DST}/128 dev veth3 ${VRF}
433 ip -netns ${NS2} route add ${IPv4_DST} encap bpf in obj \
435 ip -netns ${NS2} -6 route add ${IPv6_DST} encap bpf in obj \
438 ip -netns ${NS2} route add ${IPv4_DST} encap bpf in obj \
440 ip -netns ${NS2} -6 route add ${IPv6_DST} encap bpf in obj \