Lines Matching full:ip

21 IP="$(which ip) -netns ns1"
22 NS_EXEC="$(which ip) netns exec ns1"
58 ip netns add ns1
59 ip netns set ns1 auto
60 $IP link set dev lo up
61 ip netns exec ns1 sysctl -qw net.ipv4.ip_forward=1
62 ip netns exec ns1 sysctl -qw net.ipv6.conf.all.forwarding=1
64 $IP link add dummy0 type dummy
65 $IP link set dev dummy0 up
66 $IP address add 198.51.100.1/24 dev dummy0
67 $IP -6 address add 2001:db8:1::1/64 dev dummy0
74 $IP link del dev dummy0 &> /dev/null
75 ip netns del ns1 &> /dev/null
76 ip netns del ns2 &> /dev/null
84 addr=$($IP -6 -br addr show dev ${dev} | \
109 $IP route get fibmatch 198.51.100.2 &> /dev/null
111 $IP -6 route get fibmatch 2001:db8:1::2 &> /dev/null
115 $IP link del dev dummy0
119 $IP route get fibmatch 198.51.100.2 &> /dev/null
121 $IP -6 route get fibmatch 2001:db8:1::2 &> /dev/null
136 $IP link add dummy1 type dummy
137 $IP link set dev dummy1 up
138 $IP address add 192.0.2.1/24 dev dummy1
139 $IP -6 address add 2001:db8:2::1/64 dev dummy1
141 $IP route add 203.0.113.0/24 \
144 $IP -6 route add 2001:db8:3::/64 \
150 $IP route get fibmatch 203.0.113.1 &> /dev/null
152 $IP -6 route get fibmatch 2001:db8:3::1 &> /dev/null
156 $IP link del dev dummy0
160 $IP route get fibmatch 203.0.113.1 &> /dev/null
163 $IP -6 route get fibmatch 2001:db8:3::1 &> /dev/null
168 $IP link del dev dummy1
172 $IP -6 route get fibmatch 2001:db8:3::1 &> /dev/null
192 $IP route get fibmatch 198.51.100.2 &> /dev/null
194 $IP -6 route get fibmatch 2001:db8:1::2 &> /dev/null
198 $IP link set dev dummy0 down
202 $IP route get fibmatch 198.51.100.2 &> /dev/null
204 $IP -6 route get fibmatch 2001:db8:1::2 &> /dev/null
215 $IP route get fibmatch 203.0.113.1 \
218 $IP -6 route get fibmatch 2001:db8:3::1 \
222 $IP route get fibmatch 203.0.113.1 \
225 $IP -6 route get fibmatch 2001:db8:3::1 \
229 $IP route get fibmatch 203.0.113.1 | \
232 $IP -6 route get fibmatch 2001:db8:3::1 | \
236 $IP route get fibmatch 203.0.113.1 | \
239 $IP -6 route get fibmatch 2001:db8:3::1 | \
252 $IP link add dummy1 type dummy
253 $IP link set dev dummy1 up
255 $IP address add 192.0.2.1/24 dev dummy1
256 $IP -6 address add 2001:db8:2::1/64 dev dummy1
258 $IP route add 203.0.113.0/24 \
261 $IP -6 route add 2001:db8:3::/64 \
267 $IP route get fibmatch 203.0.113.1 &> /dev/null
270 $IP -6 route get fibmatch 2001:db8:3::1 &> /dev/null
274 $IP link set dev dummy0 down
281 $IP link set dev dummy0 up
282 $IP link set dev dummy1 down
289 $IP link set dev dummy0 down
293 $IP route get fibmatch 203.0.113.1 &> /dev/null
295 $IP -6 route get fibmatch 2001:db8:3::1 &> /dev/null
298 $IP link del dev dummy1
317 $IP link set dev dummy0 carrier on
321 $IP route get fibmatch 198.51.100.1 &> /dev/null
323 $IP -6 route get fibmatch 2001:db8:1::1 &> /dev/null
326 $IP route get fibmatch 198.51.100.1 | \
329 $IP -6 route get fibmatch 2001:db8:1::1 | \
334 $IP link set dev dummy0 carrier off
339 $IP route get fibmatch 198.51.100.1 &> /dev/null
341 $IP -6 route get fibmatch 2001:db8:1::1 &> /dev/null
344 $IP route get fibmatch 198.51.100.1 | \
347 $IP -6 route get fibmatch 2001:db8:1::1 | \
352 $IP address add 192.0.2.1/24 dev dummy0
353 $IP -6 address add 2001:db8:2::1/64 dev dummy0
357 $IP route get fibmatch 192.0.2.1 &> /dev/null
359 $IP -6 route get fibmatch 2001:db8:2::1 &> /dev/null
362 $IP route get fibmatch 192.0.2.1 | \
365 $IP -6 route get fibmatch 2001:db8:2::1 | \
382 $IP link set dev dummy0 carrier on
386 $IP route get fibmatch 198.51.100.2 &> /dev/null
388 $IP -6 route get fibmatch 2001:db8:1::2 &> /dev/null
391 $IP route get fibmatch 198.51.100.2 | \
394 $IP -6 route get fibmatch 2001:db8:1::2 | \
399 $IP link set dev dummy0 carrier off
404 $IP route get fibmatch 198.51.100.2 &> /dev/null
406 $IP -6 route get fibmatch 2001:db8:1::2 &> /dev/null
409 $IP route get fibmatch 198.51.100.2 | \
412 $IP -6 route get fibmatch 2001:db8:1::2 | \
417 $IP address add 192.0.2.1/24 dev dummy0
418 $IP -6 address add 2001:db8:2::1/64 dev dummy0
422 $IP route get fibmatch 192.0.2.2 &> /dev/null
424 $IP -6 route get fibmatch 2001:db8:2::2 &> /dev/null
427 $IP route get fibmatch 192.0.2.2 | \
430 $IP -6 route get fibmatch 2001:db8:2::2 | \
451 ip netns add ns2
452 ip netns set ns2 auto
454 ip -netns ns2 link set dev lo up
456 $IP link add name veth1 type veth peer name veth2
457 $IP link set dev veth2 netns ns2
458 $IP address add 192.0.2.1/24 dev veth1
459 ip -netns ns2 address add 192.0.2.1/24 dev veth2
460 $IP link set dev veth1 up
461 ip -netns ns2 link set dev veth2 up
463 $IP link set dev lo address 52:54:00:6a:c7:5e
464 $IP link set dev veth1 address 52:54:00:6a:c7:5e
465 ip -netns ns2 link set dev lo address 52:54:00:6a:c7:5e
466 ip -netns ns2 link set dev veth2 address 52:54:00:6a:c7:5e
469 ip netns exec ns2 tc qdisc add dev lo parent root handle 1: fq_codel
470 ip netns exec ns2 tc filter add dev lo parent 1: protocol arp basic \
472 ip netns exec ns2 tc filter add dev lo parent 1: protocol ip basic \
479 $NS_EXEC tc filter add dev veth1 ingress protocol ip basic \
486 $NS_EXEC tc filter add dev lo parent 1: protocol ip basic \
490 ip netns exec ns2 tc qdisc add dev veth2 ingress
491 ip netns exec ns2 tc filter add dev veth2 ingress protocol arp basic \
493 ip netns exec ns2 tc filter add dev veth2 ingress protocol ip basic \
499 ip netns exec ns2 sysctl -qw net.ipv4.conf.all.rp_filter=1
500 ip netns exec ns2 sysctl -qw net.ipv4.conf.all.accept_local=1
501 ip netns exec ns2 sysctl -qw net.ipv4.conf.all.route_localnet=1
504 run_cmd "ip netns exec ns2 ping -w1 -c1 192.0.2.1"
507 run_cmd "ip netns exec ns2 ping -w1 -c1 127.0.0.1"
516 # run 'ip route add' with given spec
531 cmd="$IP route add vrf $vrf $pfx $gw $dev"
625 $IP -4 rule add pref 32765 table local
626 $IP -4 rule del pref 0
627 $IP -6 rule add pref 32765 table local
628 $IP -6 rule del pref 0
630 $IP link add red type vrf table 1
631 $IP link set red up
632 $IP -4 route add vrf red unreachable default metric 4278198272
633 $IP -6 route add vrf red unreachable default metric 4278198272
635 $IP link add veth0 type veth peer name veth1
636 $IP link set dev veth0 up
637 $IP address add 192.0.2.1/24 dev veth0
638 $IP -6 address add 2001:db8:51::1/64 dev veth0
640 $IP link set dev veth1 vrf red up
641 $IP address add 192.0.2.2/24 dev veth1
642 $IP -6 address add 2001:db8:51::2/64 dev veth1
644 $IP link add dummy1 type dummy
645 $IP link set dev dummy1 vrf red up
646 $IP address add 192.168.2.1/24 dev dummy1
647 $IP -6 address add 2001:db8:2::1/64 dev dummy1
655 $IP link del dev dummy1
656 $IP link del veth0
657 $IP link del red
672 $IP link add dummy_$i type dummy
673 $IP link set dev dummy_$i up
674 $IP -6 address add 2001:$i::1/64 dev dummy_$i
677 $NS_EXEC ip monitor route &> errors.txt &
680 $IP -6 route add 2001::/64 \
719 $IP link add dummy_$i type dummy
720 $IP link set dev dummy_$i up
721 $IP address add 20.20.$i.2/24 dev dummy_$i
724 $NS_EXEC ip monitor route &> errors.txt &
727 $IP route add 10.0.0.0/24 \
729 nexthop encap ip dst 192.168.10.20 via 20.20.20.1 dev dummy_20 \
730 nexthop encap ip dst 192.168.10.30 via 20.20.30.1 dev dummy_30 \
731 nexthop encap ip dst 192.168.10.40 via 20.20.40.1 dev dummy_40 \
732 nexthop encap ip dst 192.168.10.50 via 20.20.50.1 dev dummy_50 \
733 nexthop encap ip dst 192.168.10.60 via 20.20.60.1 dev dummy_60 \
734 nexthop encap ip dst 192.168.10.70 via 20.20.70.1 dev dummy_70
767 $IP link add dummy_10 type dummy
768 $IP link set dev dummy_10 up
769 $IP -6 address add 2001:10::1/64 dev dummy_10
776 $IP -6 route add 2001:20::$i \
780 N_EXP_SLEEP=$($IP -6 route list |grep expires|wc -l)
790 $IP -6 route add 2001:30::$i \
796 $IP -6 route add 2001:20::$i \
800 N_EXP_SLEEP=$($IP -6 route list |grep expires|wc -l)
822 $IP link add dummy1 type dummy
823 $IP link set dummy1 up
824 $IP -6 route add default dev dummy1
825 $IP -6 rule add table main suppress_prefixlength 0
827 $IP -6 rule del table main suppress_prefixlength 0
828 $IP link del dummy1
878 # tricky way to convert output to 1-line without ip's
908 run_cmd "$IP -6 ro flush ${pfx}"
911 out=$($IP -6 ro ls match ${pfx})
917 run_cmd "$IP -6 ro add ${pfx} ${nh}"
940 out=$($IP -6 ro ls match ${pfx} | sed -e 's/ pref medium//')
946 $IP li del red 2>/dev/null
947 $IP li del dummy1 2>/dev/null
948 $IP li del veth1 2>/dev/null
949 $IP li del veth3 2>/dev/null
962 ip netns add ns2
963 ip netns set ns2 auto
964 ip -netns ns2 link set dev lo up
965 ip netns exec ns2 sysctl -qw net.ipv4.ip_forward=1
966 ip netns exec ns2 sysctl -qw net.ipv6.conf.all.forwarding=1
968 $IP li add veth1 type veth peer name veth2
969 $IP li add veth3 type veth peer name veth4
971 $IP li set veth1 up
972 $IP li set veth3 up
973 $IP li set veth2 netns ns2 up
974 $IP li set veth4 netns ns2 up
975 ip -netns ns2 li add dummy1 type dummy
976 ip -netns ns2 li set dummy1 up
978 $IP -6 addr add 2001:db8:101::1/64 dev veth1 nodad
979 $IP -6 addr add 2001:db8:103::1/64 dev veth3 nodad
980 $IP addr add 172.16.101.1/24 dev veth1
981 $IP addr add 172.16.103.1/24 dev veth3
983 ip -netns ns2 -6 addr add 2001:db8:101::2/64 dev veth2 nodad
984 ip -netns ns2 -6 addr add 2001:db8:103::2/64 dev veth4 nodad
985 ip -netns ns2 -6 addr add 2001:db8:104::1/64 dev dummy1 nodad
987 ip -netns ns2 addr add 172.16.101.2/24 dev veth2
988 ip -netns ns2 addr add 172.16.103.2/24 dev veth4
989 ip -netns ns2 addr add 172.16.104.1/24 dev dummy1
1003 # route add same prefix - fails with EEXISTS b/c ip adds NLM_F_EXCL
1005 run_cmd "$IP -6 ro add 2001:db8:104::/64 via 2001:db8:103::2"
1008 # route add same prefix - fails with EEXISTS b/c ip adds NLM_F_EXCL
1010 run_cmd "$IP -6 ro add 2001:db8:104::/64 dev veth3"
1013 # route add same prefix - fails with EEXISTS b/c ip adds NLM_F_EXCL
1015 run_cmd "$IP -6 ro add unreachable 2001:db8:104::/64"
1021 run_cmd "$IP -6 ro append 2001:db8:104::/64 via 2001:db8:103::2"
1031 run_cmd "$IP -6 ro add 2001:db8:104::/64 nexthop via 2001:db8:101::2 nexthop via 2001:db8:103::2"
1036 run_cmd "$IP -6 ro add 2001:db8:104::/64 via 2001:db8:103::2 metric 512"
1039 run_cmd "$IP -6 ro add 2001:db8:104::/64 via 2001:db8:103::3 metric 256"
1044 run_cmd "$IP -6 ro del 2001:db8:104::/64 metric 512"
1058 run_cmd "$IP -6 ro replace 2001:db8:104::/64 via 2001:db8:103::2"
1065 …run_cmd "$IP -6 ro replace 2001:db8:104::/64 nexthop via 2001:db8:101::3 nexthop via 2001:db8:103:…
1072 run_cmd "$IP -6 ro replace 2001:db8:104::/64 nexthop via 2001:db8:103::2"
1078 run_cmd "$IP -6 ro replace 2001:db8:104::/64 via 2001:db8:104::2"
1089 # - note use of change versus replace since ip adds NLM_F_CREATE
1092 run_cmd "$IP -6 ro change 2001:db8:105::/64 via 2001:db8:101::2"
1100 …run_cmd "$IP -6 ro replace 2001:db8:104::/64 nexthop via 2001:db8:101::3 nexthop via 2001:db8:103:…
1106 run_cmd "$IP -6 ro replace 2001:db8:104::/64 via 2001:db8:101::3"
1112 run_cmd "$IP -6 ro replace 2001:db8:104::/64 nexthop via 2001:db8:101::3"
1118 run_cmd "$IP -6 ro replace 2001:db8:104::/64 dev veth1"
1124 …run_cmd "$IP -6 ro replace 2001:db8:104::/64 nexthop via 2001:db8:111::3 nexthop via 2001:db8:103:…
1130 …run_cmd "$IP -6 ro replace 2001:db8:104::/64 nexthop via 2001:db8:101::3 nexthop via 2001:db8:113:…
1136 …run_cmd "$IP -6 ro change 2001:db8:105::/64 nexthop via 2001:db8:101::3 nexthop via 2001:db8:103::…
1154 run_cmd "$IP -6 route flush 2001:db8:102::/64"
1157 run_cmd "$IP -6 route add 2001:db8:102::/64 dsfield 0x04 via 2001:db8:101::2"
1174 ip addr help 2>&1 | grep -q metric
1195 $IP li add dummy1 type dummy
1196 $IP li add dummy2 type dummy
1197 $IP li set dummy1 up
1198 $IP li set dummy2 up
1201 run_cmd "$IP -6 addr add dev dummy1 2001:db8:104::1/64"
1202 run_cmd "$IP -6 addr add dev dummy2 2001:db8:104::2/64"
1209 run_cmd "$IP -6 addr flush dev dummy1"
1210 run_cmd "$IP -6 addr add dev dummy1 2001:db8:104::1/64 metric 257"
1217 run_cmd "$IP -6 addr flush dev dummy2"
1218 run_cmd "$IP -6 addr add dev dummy2 2001:db8:104::2/64 metric 258"
1224 run_cmd "$IP -6 addr del dev dummy1 2001:db8:104::1/64 metric 257"
1232 run_cmd "$IP -6 addr change dev dummy2 2001:db8:104::2/64 metric 259"
1241 run_cmd "ip netns exec ns1 sysctl -qw net.ipv6.conf.all.keep_addr_on_down=1"
1242 run_cmd "$IP li set dev dummy2 down"
1245 out=$($IP -6 ro ls match 2001:db8:104::/64)
1252 run_cmd "$IP li set dev dummy2 up"
1262 run_cmd "$IP -6 addr flush dev dummy2"
1263 run_cmd "$IP -6 addr add dev dummy2 2001:db8:104::1 peer 2001:db8:104::2 metric 260"
1272 run_cmd "$IP -6 addr change dev dummy2 2001:db8:104::1 peer 2001:db8:104::3 metric 261"
1280 $IP li del dummy1
1281 $IP li del dummy2
1297 run_cmd "$IP -6 ro add 2001:db8:111::/64 via 2001:db8:101::2 mtu 1400"
1309 run_cmd "$IP -6 ro add 2001:db8:112::/64 via 2001:db8:101::2 mtu 1400"
1310 run_cmd "$IP -6 ro append 2001:db8:112::/64 via 2001:db8:103::2"
1320 run_cmd "$IP -6 ro add 2001:db8:113::/64 via 2001:db8:101::2"
1321 run_cmd "$IP -6 ro append 2001:db8:113::/64 via 2001:db8:103::2 mtu 1400"
1329 run_cmd "$IP -6 ro del 2001:db8:113::/64 via 2001:db8:101::2"
1338 …run_cmd "$IP -6 ro add 2001:db8:115::/64 mtu 1400 nexthop via 2001:db8:101::2 nexthop via 2001:db8…
1346 $IP -6 ro add 2001:db8:104::/64 via 2001:db8:101::2 mtu 1300
1347 run_cmd "ip netns exec ns1 ${ping6} -w1 -c1 -s 1500 2001:db8:104::1"
1350 run_cmd "$IP -6 ro add 2001:db8:114::/64 via 2001:db8:101::2 congctl lock foo"
1370 run_cmd "$IP ro flush ${pfx}"
1373 out=$($IP ro ls match ${pfx})
1379 run_cmd "$IP ro add ${pfx} ${nh}"
1402 out=$($IP ro ls match ${pfx})
1415 # route add same prefix - fails with EEXISTS b/c ip adds NLM_F_EXCL
1417 run_cmd "$IP ro add 172.16.104.0/24 via 172.16.103.2"
1420 # route add same prefix - fails with EEXISTS b/c ip adds NLM_F_EXCL
1422 run_cmd "$IP ro add 172.16.104.0/24 dev veth3"
1425 # route add same prefix - fails with EEXISTS b/c ip adds NLM_F_EXCL
1427 run_cmd "$IP ro add unreachable 172.16.104.0/24"
1433 run_cmd "$IP ro prepend 172.16.104.0/24 via 172.16.103.2"
1440 run_cmd "$IP ro append 172.16.104.0/24 via 172.16.103.2"
1445 run_cmd "$IP ro append 172.16.104.0/24 dev veth3"
1450 run_cmd "$IP ro append unreachable 172.16.104.0/24"
1454 run_cmd "$IP ro flush 172.16.104.0/24"
1455 run_cmd "$IP ro add unreachable 172.16.104.0/24"
1456 run_cmd "$IP ro append 172.16.104.0/24 via 172.16.103.2"
1460 run_cmd "$IP ro flush 172.16.104.0/24"
1461 run_cmd "$IP ro add unreachable 172.16.104.0/24"
1462 run_cmd "$IP ro append 172.16.104.0/24 dev veth3"
1472 run_cmd "$IP ro add 172.16.104.0/24 nexthop via 172.16.101.2 nexthop via 172.16.103.2"
1477 run_cmd "$IP ro add 172.16.104.0/24 via 172.16.103.2 metric 512"
1480 run_cmd "$IP ro add 172.16.104.0/24 via 172.16.103.3 metric 256"
1485 run_cmd "$IP ro del 172.16.104.0/24 metric 512"
1499 run_cmd "$IP ro replace 172.16.104.0/24 via 172.16.103.2"
1506 run_cmd "$IP ro replace 172.16.104.0/24 nexthop via 172.16.101.3 nexthop via 172.16.103.2"
1513 run_cmd "$IP ro replace unreachable 172.16.104.0/24"
1520 run_cmd "$IP ro replace 172.16.104.0/24 nexthop via 172.16.103.2"
1526 run_cmd "$IP ro replace 172.16.104.0/24 via 2001:db8:104::2"
1537 # - note use of change versus replace since ip adds NLM_F_CREATE
1540 run_cmd "$IP ro change 172.16.105.0/24 via 172.16.101.2"
1548 run_cmd "$IP ro replace 172.16.104.0/24 nexthop via 172.16.101.3 nexthop via 172.16.103.3"
1554 run_cmd "$IP ro replace 172.16.104.0/24 via 172.16.101.3"
1560 run_cmd "$IP ro replace 172.16.104.0/24 nexthop via 172.16.101.3"
1566 run_cmd "$IP ro replace unreachable 172.16.104.0/24"
1572 run_cmd "$IP ro replace 172.16.104.0/24 nexthop via 172.16.111.3 nexthop via 172.16.103.3"
1578 run_cmd "$IP ro replace 172.16.104.0/24 nexthop via 172.16.101.3 nexthop via 172.16.113.3"
1584 run_cmd "$IP ro change 172.16.105.0/24 nexthop via 172.16.101.3 nexthop via 172.16.103.3"
1601 run_cmd "ip addr add 10.0.0.1/32 dev lo"
1602 run_cmd "ip netns add test-ns"
1603 run_cmd "ip link add veth-outside type veth peer name veth-inside"
1604 run_cmd "ip link add vrf-100 type vrf table 1100"
1605 run_cmd "ip link set veth-outside master vrf-100"
1606 run_cmd "ip link set veth-inside netns test-ns"
1607 run_cmd "ip link set veth-outside up"
1608 run_cmd "ip link set vrf-100 up"
1609 run_cmd "ip route add 10.1.1.1/32 dev veth-outside table 1100"
1610 run_cmd "ip netns exec test-ns ip link set veth-inside up"
1611 run_cmd "ip netns exec test-ns ip addr add 10.1.1.1/32 dev veth-inside"
1612 run_cmd "ip netns exec test-ns ip route add 10.0.0.1/32 dev veth-inside"
1613 run_cmd "ip netns exec test-ns ip route add default via 10.0.0.1"
1614 run_cmd "ip netns exec test-ns ping 10.0.0.1 -c 1 -i 1"
1615 run_cmd "ip link delete vrf-100"
1626 run_cmd "$IP route flush 172.16.102.0/24"
1629 run_cmd "$IP route add 172.16.102.0/24 dsfield 0x01 via 172.16.101.2"
1632 run_cmd "$IP route add 172.16.102.0/24 dsfield 0x02 via 172.16.101.2"
1635 run_cmd "$IP route add 172.16.102.0/24 dsfield 0x03 via 172.16.101.2"
1639 run_cmd "$IP route add 172.16.102.0/24 via 172.16.101.2"
1642 run_cmd "$IP route add 172.16.102.0/24 dsfield 0x10 via 172.16.103.2"
1645 $IP route get fibmatch 172.16.102.1 dsfield 0x10 | \
1649 $IP route get fibmatch 172.16.102.1 dsfield 0x11 | \
1653 $IP route get fibmatch 172.16.102.1 dsfield 0x12 | \
1657 $IP route get fibmatch 172.16.102.1 dsfield 0x13 | \
1662 $IP route get fibmatch 172.16.102.1 dsfield 0x14 | \
1666 $IP route get fibmatch 172.16.102.1 dsfield 0x15 | \
1670 $IP route get fibmatch 172.16.102.1 dsfield 0x16 | \
1674 $IP route get fibmatch 172.16.102.1 dsfield 0x17 | \
1679 $IP route get fibmatch 172.16.102.1 dsfield 0x00 | \
1683 $IP route get fibmatch 172.16.102.1 dsfield 0x01 | \
1687 $IP route get fibmatch 172.16.102.1 dsfield 0x02 | \
1691 $IP route get fibmatch 172.16.102.1 dsfield 0x03 | \
1720 $IP li add dummy1 type dummy
1721 $IP li add dummy2 type dummy
1722 $IP li set dummy1 up
1723 $IP li set dummy2 up
1726 run_cmd "$IP addr add dev dummy1 172.16.104.1/24"
1727 run_cmd "$IP addr add dev dummy2 172.16.104.2/24"
1734 run_cmd "$IP addr flush dev dummy1"
1735 run_cmd "$IP addr add dev dummy1 172.16.104.1/24 metric 257"
1742 run_cmd "$IP addr flush dev dummy2"
1743 run_cmd "$IP addr add dev dummy2 172.16.104.2/24 metric 258"
1749 run_cmd "$IP addr del dev dummy1 172.16.104.1/24 metric 257"
1757 run_cmd "$IP addr change dev dummy2 172.16.104.2/24 metric 259"
1766 run_cmd "$IP li set dev dummy2 down"
1769 out=$($IP ro ls match 172.16.104.0/24)
1776 run_cmd "$IP li set dev dummy2 up"
1785 run_cmd "$IP addr flush dev dummy2"
1786 run_cmd "$IP addr add dev dummy2 172.16.104.0/24 metric 259"
1787 run_cmd "$IP addr change dev dummy2 172.16.104.0/24 metric 260"
1795 run_cmd "$IP addr flush dev dummy2"
1796 run_cmd "$IP addr add dev dummy2 172.16.104.1/32 peer 172.16.104.2 metric 260"
1804 run_cmd "$IP addr change dev dummy2 172.16.104.1/32 peer 172.16.104.3 metric 261"
1812 $IP li del dummy1
1813 $IP li del dummy2
1826 run_cmd "$IP ro add 172.16.111.0/24 via 172.16.101.2 mtu 1400"
1835 run_cmd "$IP ro add 172.16.112.0/24 mtu 1400 nexthop via 172.16.101.2 nexthop via 172.16.103.2"
1843 $IP ro add 172.16.104.0/24 via 172.16.101.2 mtu 1300
1844 run_cmd "ip netns exec ns1 ping -w1 -c1 -s 1500 172.16.104.1"
1847 run_cmd "$IP ro add 172.16.111.0/24 via 172.16.101.2 congctl lock foo"
1861 $IP li add dummy1 type dummy
1862 $IP li set dummy1 up
1863 $IP li add dummy2 type dummy
1864 $IP li set dummy2 up
1865 $IP li add red type vrf table 1111
1866 $IP li set red up
1867 $IP ro add vrf red unreachable default
1868 $IP li set dummy2 vrf red
1870 $IP addr add dev dummy1 172.16.104.1/24
1871 $IP addr add dev dummy1 172.16.104.11/24
1872 $IP addr add dev dummy1 172.16.104.12/24
1873 $IP addr add dev dummy1 172.16.104.13/24
1874 $IP addr add dev dummy2 172.16.104.1/24
1875 $IP addr add dev dummy2 172.16.104.11/24
1876 $IP addr add dev dummy2 172.16.104.12/24
1877 $IP route add 172.16.105.0/24 via 172.16.104.2 src 172.16.104.11
1878 $IP route add 172.16.106.0/24 dev lo src 172.16.104.12
1879 $IP route add table 0 172.16.107.0/24 via 172.16.104.2 src 172.16.104.13
1880 $IP route add vrf red 172.16.105.0/24 via 172.16.104.2 src 172.16.104.11
1881 $IP route add vrf red 172.16.106.0/24 dev lo src 172.16.104.12
1887 $IP addr del dev dummy2 172.16.104.11/24
1888 $IP ro ls vrf red | grep -q 172.16.105.0/24
1891 $IP ro ls | grep -q 172.16.105.0/24
1894 $IP addr add dev dummy2 172.16.104.11/24
1895 $IP route add vrf red 172.16.105.0/24 via 172.16.104.2 src 172.16.104.11
1897 $IP addr del dev dummy1 172.16.104.11/24
1898 $IP ro ls | grep -q 172.16.105.0/24
1901 $IP ro ls vrf red | grep -q 172.16.105.0/24
1908 $IP addr del dev dummy2 172.16.104.12/24
1909 $IP ro ls vrf red | grep -q 172.16.106.0/24
1912 $IP ro ls | grep -q 172.16.106.0/24
1915 $IP addr add dev dummy2 172.16.104.12/24
1916 $IP route add vrf red 172.16.106.0/24 dev lo src 172.16.104.12
1918 $IP addr del dev dummy1 172.16.104.12/24
1919 $IP ro ls | grep -q 172.16.106.0/24
1922 $IP ro ls vrf red | grep -q 172.16.106.0/24
1929 $IP addr del dev dummy1 172.16.104.13/24
1930 $IP ro ls | grep -q 172.16.107.0/24
1933 $IP li del dummy1
1934 $IP li del dummy2
1947 $IP li add dummy${i} up type dummy
1950 $IP li add red up type vrf table 1111
1951 $IP ro add vrf red unreachable default
1953 $IP li set dummy${i} vrf red
1956 $IP addr add dev dummy1 fe80::1/128
1957 $IP addr add dev dummy1 2001:db8:101::1/64
1958 $IP addr add dev dummy1 2001:db8:101::10/64
1959 $IP addr add dev dummy1 2001:db8:101::11/64
1960 $IP addr add dev dummy1 2001:db8:101::12/64
1961 $IP addr add dev dummy1 2001:db8:101::13/64
1962 $IP addr add dev dummy1 2001:db8:101::14/64
1963 $IP addr add dev dummy1 2001:db8:101::15/64
1964 $IP addr add dev dummy2 fe80::1/128
1965 $IP addr add dev dummy2 2001:db8:101::1/64
1966 $IP addr add dev dummy2 2001:db8:101::11/64
1967 $IP addr add dev dummy3 fe80::1/128
1969 $IP addr add dev dummy4 2001:db8:101::1/64
1970 $IP addr add dev dummy4 2001:db8:101::10/64
1971 $IP addr add dev dummy4 2001:db8:101::11/64
1972 $IP addr add dev dummy4 2001:db8:101::12/64
1973 $IP addr add dev dummy4 2001:db8:101::13/64
1974 $IP addr add dev dummy4 2001:db8:101::14/64
1975 $IP addr add dev dummy5 2001:db8:101::1/64
1976 $IP addr add dev dummy5 2001:db8:101::11/64
1979 $IP route add 2001:db8:110::/64 dev dummy3 src 2001:db8:101::10
1981 $IP route add 2001:db8:111::/64 dev dummy3 src 2001:db8:101::11
1983 $IP route add vrf red 2001:db8:110::/64 dev dummy6 src 2001:db8:101::10
1985 $IP route add vrf red 2001:db8:111::/64 dev dummy6 src 2001:db8:101::11
1987 $IP route add 2001:db8:112::/64 dev dummy3 src 2001:db8:101::12
1988 $IP route add vrf red 2001:db8:112::/64 dev dummy6 src 2001:db8:101::12
1990 $IP route add 2001:db8:113::/64 dev lo src 2001:db8:101::13
1991 $IP route add vrf red 2001:db8:113::/64 dev lo src 2001:db8:101::13
1993 $IP route add table 0 2001:db8:115::/64 via 2001:db8:101::2 src 2001:db8:101::15
1995 $IP route add 2001:db8:116::/64 dev dummy2 src fe80::1
1996 $IP route add 2001:db8:117::/64 dev dummy3 src fe80::1
2001 $IP addr del dev dummy1 2001:db8:101::10/64
2002 $IP -6 route show | grep -q "src 2001:db8:101::10 "
2007 $IP addr del dev dummy1 2001:db8:101::11/64
2008 $IP -6 route show | grep -q "src 2001:db8:101::11 "
2011 $IP addr del dev dummy2 2001:db8:101::11/64
2012 $IP -6 route show | grep -q "src 2001:db8:101::11 "
2017 $IP addr del dev dummy4 2001:db8:101::10/64
2018 $IP -6 route show vrf red | grep -q "src 2001:db8:101::10 "
2023 $IP addr del dev dummy4 2001:db8:101::11/64
2024 $IP -6 route show vrf red | grep -q "src 2001:db8:101::11 "
2027 $IP addr del dev dummy5 2001:db8:101::11/64
2028 $IP -6 route show vrf red | grep -q "src 2001:db8:101::11 "
2033 $IP addr del dev dummy4 2001:db8:101::12/64
2034 $IP -6 route show vrf red | grep -q "src 2001:db8:101::12 "
2036 $IP -6 route show | grep -q " src 2001:db8:101::12 "
2039 $IP addr add dev dummy4 2001:db8:101::12/64
2040 $IP route replace vrf red 2001:db8:112::/64 dev dummy6 src 2001:db8:101::12
2041 $IP addr del dev dummy1 2001:db8:101::12/64
2042 $IP -6 route show vrf red | grep -q "src 2001:db8:101::12 "
2044 $IP -6 route show | grep -q " src 2001:db8:101::12 "
2049 $IP addr del dev dummy4 2001:db8:101::13/64
2050 $IP -6 route show vrf red | grep -q "src 2001:db8:101::13 "
2052 $IP -6 route show | grep -q "src 2001:db8:101::13 "
2055 $IP addr add dev dummy4 2001:db8:101::13/64
2056 $IP addr del dev dummy1 2001:db8:101::13/64
2057 $IP -6 route show vrf red | grep -q "src 2001:db8:101::13 "
2059 $IP -6 route show | grep -q "src 2001:db8:101::13 "
2064 $IP addr del dev dummy1 2001:db8:101::15/64
2065 $IP -6 route show | grep -q "src 2001:db8:101::15"
2069 $IP addr del dev dummy1 fe80::1/128
2070 $IP -6 route show | grep -q "2001:db8:116::/64 dev dummy2 src fe80::1"
2072 $IP addr del dev dummy2 fe80::1/128
2073 $IP -6 route show | grep -q "2001:db8:116::/64 dev dummy2 src fe80::1"
2075 $IP -6 route show | grep -q "2001:db8:117::/64 dev dummy3 src fe80::1"
2077 $IP addr add dev dummy1 fe80::1/128
2078 $IP addr del dev dummy3 fe80::1/128
2079 $IP -6 route show | grep -q "2001:db8:117::/64 dev dummy3 src fe80::1"
2083 $IP li del dummy${i}
2101 run_cmd "$IP ro add 172.16.104.0/24 via inet6 2001:db8:101::2"
2108 run_cmd "ip netns exec ns1 ping -w1 -c1 172.16.104.1"
2111 run_cmd "$IP ro del 172.16.104.0/24 via inet6 2001:db8:101::2"
2121 …run_cmd "$IP ro add 172.16.104.0/24 nexthop via inet6 2001:db8:101::2 dev veth1 nexthop via 172.16…
2128 …run_cmd "$IP ro del 172.16.104.0/24 nexthop via 172.16.103.2 dev veth3 nexthop via inet6 2001:db8:…
2131 …run_cmd "$IP ro del 172.16.104.0/24 nexthop via inet6 2001:db8:101::2 dev veth1 nexthop via 172.16…
2137 …run_cmd "$IP ro add 172.16.104.0/24 nexthop via 172.16.103.2 dev veth3 nexthop via inet6 2001:db8:…
2144 …run_cmd "$IP ro del 172.16.104.0/24 nexthop via inet6 2001:db8:101::2 dev veth1 nexthop via 172.16…
2147 …run_cmd "$IP ro del 172.16.104.0/24 nexthop via 172.16.103.2 dev veth3 nexthop via inet6 2001:db8:…
2199 ip netns exec ns2 socat UDP4-LISTEN:54321,fork $tmp_file &
2203 $IP rule add pref 100 ipproto udp sport 12345 dport 54321 table 123
2204 $IP route add table 123 172.16.101.0/24 dev veth1
2208 $IP route add unreachable 172.16.101.2/32
2233 $IP route del unreachable 172.16.101.2/32
2234 $IP route del table 123 172.16.101.0/24 dev veth1
2235 $IP rule del pref 100
2257 ip netns exec ns2 socat UDP6-LISTEN:54321,fork $tmp_file &
2261 $IP -6 rule add pref 100 ipproto udp sport 12345 dport 54321 table 123
2262 $IP -6 route add table 123 2001:db8:101::/64 dev veth1
2266 $IP -6 route add unreachable 2001:db8:101::2/128
2291 $IP -6 route del unreachable 2001:db8:101::2/128
2292 $IP -6 route del table 123 2001:db8:101::/64 dev veth1
2293 $IP -6 rule del pref 100
2303 ip neigh help 2>&1 | grep -q 'ip neigh get'
2324 run_cmd "$IP neigh add 192.0.2.111 lladdr 00:11:22:33:44:55 nud perm dev dummy0"
2325 run_cmd "$IP neigh add 192.0.2.255 lladdr 00:11:22:33:44:55 nud perm dev dummy0"
2327 run_cmd "$IP neigh get 192.0.2.111 dev dummy0"
2328 run_cmd "$IP neigh get 192.0.2.255 dev dummy0"
2330 run_cmd "$IP address add 192.0.2.1/24 broadcast 192.0.2.111 dev dummy0"
2332 run_cmd "$IP neigh add 203.0.113.111 nud failed dev dummy0"
2333 run_cmd "$IP neigh add 203.0.113.255 nud failed dev dummy0"
2335 run_cmd "$IP neigh get 203.0.113.111 dev dummy0"
2336 run_cmd "$IP neigh get 203.0.113.255 dev dummy0"
2338 run_cmd "$IP address add 203.0.113.1/24 broadcast 203.0.113.111 dev dummy0"
2341 run_cmd "$IP neigh get 192.0.2.111 dev dummy0"
2344 run_cmd "$IP neigh get 192.0.2.255 dev dummy0"
2347 run_cmd "$IP neigh get 203.0.113.111 dev dummy0"
2350 run_cmd "$IP neigh get 203.0.113.255 dev dummy0"
2400 ip -n $ns -j -s link show dev $dev \
2426 run_cmd "ip netns exec ns1 ethtool -K veth1 tcp-segmentation-offload off"
2428 run_cmd "ip netns exec ns2 bash -c \"echo 20000 > /sys/class/net/veth2/gro_flush_timeout\""
2429 run_cmd "ip netns exec ns2 bash -c \"echo 1 > /sys/class/net/veth2/napi_defer_hard_irqs\""
2430 run_cmd "ip netns exec ns2 ethtool -K veth2 generic-receive-offload on"
2431 run_cmd "ip -n ns2 link add name nh1 up type dummy"
2432 run_cmd "ip -n ns2 link add name nh2 up type dummy"
2433 run_cmd "ip -n ns2 address add 172.16.201.1/24 dev nh1"
2434 run_cmd "ip -n ns2 address add 172.16.202.1/24 dev nh2"
2435 run_cmd "ip -n ns2 neigh add 172.16.201.2 lladdr 00:11:22:33:44:55 nud perm dev nh1"
2436 run_cmd "ip -n ns2 neigh add 172.16.202.2 lladdr 00:aa:bb:cc:dd:ee nud perm dev nh2"
2437 run_cmd "ip -n ns2 route add 203.0.113.0/24
2439 run_cmd "ip netns exec ns2 sysctl -qw net.ipv4.fib_multipath_hash_policy=1"
2440 run_cmd "ip netns exec ns2 sysctl -qw net.ipv4.conf.veth2.rp_filter=0"
2441 run_cmd "ip netns exec ns2 sysctl -qw net.ipv4.conf.all.rp_filter=0"
2442 run_cmd "ip netns exec ns2 sysctl -qw net.ipv4.conf.default.rp_filter=0"
2445 local dmac=$(ip -n ns2 -j link show dev veth2 | jq -r '.[]["address"]')
2447 local cmd="ip netns exec ns1 mausezahn veth1 -a own -b $dmac
2474 run_cmd "ip netns exec ns1 ethtool -K veth1 tcp-segmentation-offload off"
2476 run_cmd "ip netns exec ns2 bash -c \"echo 20000 > /sys/class/net/veth2/gro_flush_timeout\""
2477 run_cmd "ip netns exec ns2 bash -c \"echo 1 > /sys/class/net/veth2/napi_defer_hard_irqs\""
2478 run_cmd "ip netns exec ns2 ethtool -K veth2 generic-receive-offload on"
2479 run_cmd "ip -n ns2 link add name nh1 up type dummy"
2480 run_cmd "ip -n ns2 link add name nh2 up type dummy"
2481 run_cmd "ip -n ns2 -6 address add 2001:db8:201::1/64 dev nh1"
2482 run_cmd "ip -n ns2 -6 address add 2001:db8:202::1/64 dev nh2"
2483 run_cmd "ip -n ns2 -6 neigh add 2001:db8:201::2 lladdr 00:11:22:33:44:55 nud perm dev nh1"
2484 run_cmd "ip -n ns2 -6 neigh add 2001:db8:202::2 lladdr 00:aa:bb:cc:dd:ee nud perm dev nh2"
2485 run_cmd "ip -n ns2 -6 route add 2001:db8:301::/64
2487 run_cmd "ip netns exec ns2 sysctl -qw net.ipv6.fib_multipath_hash_policy=1"
2490 local dmac=$(ip -n ns2 -j link show dev veth2 | jq -r '.[]["address"]')
2492 local cmd="ip netns exec ns1 mausezahn -6 veth1 -a own -b $dmac
2542 PEER_CMD="ip netns exec ${PEER_NS}"
2552 if [ ! -x "$(command -v ip)" ]; then
2553 echo "SKIP: Could not run test without ip tool"
2557 ip route help 2>&1 | grep -q fibmatch