Lines Matching +full:6 +full:a
13 # 6. VRF and non-VRF permutations
16 # ns-A | ns-B
23 # ns-A:
35 # ns-A to ns-C connection - only for VRF and same config
36 # as ns-A to ns-B
38 # server / client nomenclature relative to ns-A
215 if [ "$VERBOSE" = "1" -a -n "$out" ]; then
253 read a
275 read a
297 read a
303 # set sysctl values in NS-A
311 # get sysctl values in NS-A
329 ${NSA_IP}) echo "ns-A IP";;
330 ${NSA_IP6}) echo "ns-A IPv6";;
331 ${NSA_LO_IP}) echo "ns-A loopback IP";;
332 ${NSA_LO_IP6}) echo "ns-A loopback IPv6";;
333 ${NSA_LINKIP6}|${NSA_LINKIP6}%*) echo "ns-A IPv6 LLA";;
359 addr=$(ip -netns ${ns} -6 -br addr show dev ${dev} | \
390 ip -netns ${ns} -6 route add vrf ${vrf} unreachable default metric 8192
393 ip -netns ${ns} -6 addr add ::1 dev ${vrf} nodad
398 ip -netns ${ns} -6 addr add dev ${vrf} ${addr6}
403 ip -netns ${ns} -6 ru del pref 0
404 ip -netns ${ns} -6 ru add pref 32765 from all lookup local
417 ip -netns ${ns} -6 addr add dev lo ${addr6}
421 ip -netns ${ns} -6 ro add unreachable default metric 8192
439 local ns2_dev=$6
468 ip -netns ${NSA} -6 addr flush dev ${NSA_DEV}
491 # ns-B but for a device NOT in the VRF
503 # make sure we are starting with a clean slate
522 # tell ns-A how to get to remote addresses of ns-B
528 ip -netns ${NSA} -6 ro add vrf ${VRF} ${NSB_LO_IP6}/128 via ${NSB_IP6} dev ${NSA_DEV}
531 ip -netns ${NSB} -6 ro add ${VRF_IP6}/128 via ${NSA_IP6} dev ${NSB_DEV}
538 # tell ns-B how to get to remote addresses of ns-A
549 # make sure we are starting with a clean slate
586 local a
591 for a in ${NSB_IP} ${NSB_LO_IP}
594 run_cmd ping -c1 -w1 ${a}
595 log_test_addr ${a} $? 0 "ping out"
598 run_cmd ping -c1 -w1 -I ${NSA_DEV} ${a}
599 log_test_addr ${a} $? 0 "ping out, device bind"
602 run_cmd ping -c1 -w1 -I ${NSA_LO_IP} ${a}
603 log_test_addr ${a} $? 0 "ping out, address bind"
609 a=${NSB_IP}
611 run_cmd ping -c 1 -w 1 -r ${a}
612 log_test_addr ${a} $? 0 "ping out (don't route), peer on link"
614 a=${NSB_LO_IP}
617 run_cmd ping -c 1 -w 1 -r ${a}
618 log_test_addr ${a} $? 1 "ping out (don't route), peer not on link"
623 for a in ${NSA_IP} ${NSA_LO_IP}
626 run_cmd_nsb ping -c1 -w1 ${a}
627 log_test_addr ${a} $? 0 "ping in"
633 for a in ${NSA_IP} ${NSA_LO_IP} 127.0.0.1
636 run_cmd ping -c1 -w1 ${a}
637 log_test_addr ${a} $? 0 "ping local"
644 a=${NSA_IP}
646 run_cmd ping -c1 -w1 -I ${NSA_DEV} ${a}
647 log_test_addr ${a} $? 0 "ping local, device bind"
650 # fails in a really weird way though because ipv4 special cases
652 for a in ${NSA_LO_IP} 127.0.0.1
656 run_cmd ping -c1 -w1 -I ${NSA_DEV} ${a}
657 log_test_addr ${a} $? 1 "ping local, device bind"
669 a=${NSB_LO_IP}
670 run_cmd ping -c1 -w1 ${a}
671 log_test_addr ${a} $? 2 "ping out, blocked by rule"
674 # a viable rtable if the oif (e.g., bind to device) is set, so this
676 # run_cmd ping -c1 -w1 -I ${NSA_DEV} ${a}
678 a=${NSA_LO_IP}
681 run_cmd_nsb ping -c1 -w1 ${a}
682 log_test_addr ${a} $? 1 "ping in, blocked by rule"
697 a=${NSB_LO_IP}
698 run_cmd ping -c1 -w1 ${a}
699 log_test_addr ${a} $? 2 "ping out, blocked by route"
702 # a viable rtable if the oif (e.g., bind to device) is set, so this
703 # case succeeds despite not having a route for the address
704 # run_cmd ping -c1 -w1 -I ${NSA_DEV} ${a}
706 a=${NSA_LO_IP}
709 run_cmd_nsb ping -c1 -w1 ${a}
710 log_test_addr ${a} $? 1 "ping in, blocked by route"
718 a=${NSB_LO_IP}
719 run_cmd ping -c1 -w1 ${a}
720 log_test_addr ${a} $? 2 "ping out, unreachable default route"
723 # a viable rtable if the oif (e.g., bind to device) is set, so this
724 # case succeeds despite not having a route for the address
725 # run_cmd ping -c1 -w1 -I ${NSA_DEV} ${a}
730 local a
738 for a in ${NSB_IP} ${NSB_LO_IP}
741 run_cmd ping -c1 -w1 -I ${VRF} ${a}
742 log_test_addr ${a} $? 0 "ping out, VRF bind"
745 run_cmd ping -c1 -w1 -I ${NSA_DEV} ${a}
746 log_test_addr ${a} $? 0 "ping out, device bind"
749 run_cmd ip vrf exec ${VRF} ping -c1 -w1 -I ${NSA_IP} ${a}
750 log_test_addr ${a} $? 0 "ping out, vrf device + dev address bind"
753 run_cmd ip vrf exec ${VRF} ping -c1 -w1 -I ${VRF_IP} ${a}
754 log_test_addr ${a} $? 0 "ping out, vrf device + vrf address bind"
760 for a in ${NSA_IP} ${VRF_IP}
763 run_cmd_nsb ping -c1 -w1 ${a}
764 log_test_addr ${a} $? 0 "ping in"
770 for a in ${NSA_IP} ${VRF_IP} 127.0.0.1
773 show_hint "Source address should be ${a}"
774 run_cmd ping -c1 -w1 -I ${VRF} ${a}
775 log_test_addr ${a} $? 0 "ping local, VRF bind"
782 a=${NSA_IP}
784 run_cmd ping -c1 -w1 -I ${NSA_DEV} ${a}
785 log_test_addr ${a} $? 0 "ping local, device bind"
788 for a in ${VRF_IP} 127.0.0.1
792 run_cmd ping -c1 -w1 -I ${NSA_DEV} ${a}
793 log_test_addr ${a} $? 2 "ping local, device bind"
803 a=${NSB_LO_IP}
804 run_cmd ping -c1 -w1 -I ${VRF} ${a}
805 log_test_addr ${a} $? 2 "ping out, vrf bind, blocked by rule"
808 run_cmd ping -c1 -w1 -I ${NSA_DEV} ${a}
809 log_test_addr ${a} $? 2 "ping out, device bind, blocked by rule"
811 a=${NSA_LO_IP}
814 run_cmd_nsb ping -c1 -w1 ${a}
815 log_test_addr ${a} $? 1 "ping in, blocked by rule"
827 a=${NSB_LO_IP}
828 run_cmd ping -c1 -w1 -I ${VRF} ${a}
829 log_test_addr ${a} $? 2 "ping out, vrf bind, unreachable route"
832 run_cmd ping -c1 -w1 -I ${NSA_DEV} ${a}
833 log_test_addr ${a} $? 2 "ping out, device bind, unreachable route"
835 a=${NSA_LO_IP}
838 run_cmd_nsb ping -c1 -w1 ${a}
839 log_test_addr ${a} $? 1 "ping in, unreachable route"
1004 # duplicate config between default VRF and a VRF
1072 log_test $? 1 "MD5: VRF: Device must be a VRF - single address"
1076 log_test $? 1 "MD5: VRF: Device must be a VRF - prefix"
1139 local a
1144 # on link (doesn't need to be routed through a gateway).
1154 a=${NSB_IP}
1156 do_run_cmd nettest -B -N "${NSA}" -O "${NSB}" -r ${a} --client-dontroute
1157 log_test_addr ${a} $? 0 "SO_DONTROUTE client, syncookies=${syncookies}"
1159 a=${NSB_IP}
1161 do_run_cmd nettest -B -N "${NSA}" -O "${NSB}" -r ${a} --server-dontroute
1162 log_test_addr ${a} $? 0 "SO_DONTROUTE server, syncookies=${syncookies}"
1169 # to respond to a routed address and not a link local one).
1171 a=${NSB_LO_IP}
1174 do_run_cmd nettest -B -N "${NSA}" -O "${NSB}" -c "${NSA_LO_IP}" -r ${a} --client-dontroute
1175 log_test_addr ${a} $? 1 "SO_DONTROUTE client, syncookies=${syncookies}"
1177 a=${NSB_LO_IP}
1180 do_run_cmd nettest -B -N "${NSA}" -O "${NSB}" -c "${NSA_LO_IP}" -r ${a} --server-dontroute
1181 log_test_addr ${a} $? 2 "SO_DONTROUTE server, syncookies=${syncookies}"
1189 local a
1194 for a in ${NSA_IP} ${NSA_LO_IP}
1199 run_cmd_nsb nettest -r ${a}
1200 log_test_addr ${a} $? 0 "Global server"
1203 a=${NSA_IP}
1207 run_cmd_nsb nettest -r ${a}
1208 log_test_addr ${a} $? 0 "Device server"
1211 for a in ${NSA_IP} ${NSA_LO_IP}
1215 run_cmd_nsb nettest -r ${a}
1216 log_test_addr ${a} $? 1 "No server"
1222 for a in ${NSB_IP} ${NSB_LO_IP}
1227 run_cmd nettest -r ${a} -0 ${NSA_IP}
1228 log_test_addr ${a} $? 0 "Client"
1233 run_cmd nettest -r ${a} -d ${NSA_DEV}
1234 log_test_addr ${a} $? 0 "Client, device bind"
1238 run_cmd nettest -r ${a}
1239 log_test_addr ${a} $? 1 "No server, unbound client"
1243 run_cmd nettest -r ${a} -d ${NSA_DEV}
1244 log_test_addr ${a} $? 1 "No server, device client"
1250 for a in ${NSA_IP} ${NSA_LO_IP} 127.0.0.1
1255 run_cmd nettest -r ${a} -0 ${a} -1 ${a}
1256 log_test_addr ${a} $? 0 "Global server, local connection"
1259 a=${NSA_IP}
1263 run_cmd nettest -r ${a} -0 ${a}
1264 log_test_addr ${a} $? 0 "Device server, unbound client, local connection"
1266 for a in ${NSA_LO_IP} 127.0.0.1
1272 run_cmd nettest -r ${a}
1273 log_test_addr ${a} $? 1 "Device server, unbound client, local connection"
1276 a=${NSA_IP}
1280 run_cmd nettest -r ${a} -0 ${a} -d ${NSA_DEV}
1281 log_test_addr ${a} $? 0 "Global server, device client, local connection"
1283 for a in ${NSA_LO_IP} 127.0.0.1
1289 run_cmd nettest -r ${a} -d ${NSA_DEV}
1290 log_test_addr ${a} $? 1 "Global server, device client, local connection"
1293 a=${NSA_IP}
1297 run_cmd nettest -d ${NSA_DEV} -r ${a} -0 ${a}
1298 log_test_addr ${a} $? 0 "Device server, device client, local connection"
1302 run_cmd nettest -d ${NSA_DEV} -r ${a}
1303 log_test_addr ${a} $? 1 "No server, device client, local conn"
1313 local a
1323 for a in ${NSA_IP} ${VRF_IP}
1329 run_cmd_nsb nettest -r ${a}
1330 log_test_addr ${a} $? 1 "Global server"
1335 run_cmd_nsb nettest -r ${a}
1336 log_test_addr ${a} $? 0 "VRF server"
1341 run_cmd_nsb nettest -r ${a}
1342 log_test_addr ${a} $? 0 "Device server"
1347 run_cmd_nsb nettest -r ${a}
1348 log_test_addr ${a} $? 1 "No server"
1353 a=${NSA_IP}
1358 run_cmd nettest -r ${a} -d ${NSA_DEV}
1359 log_test_addr ${a} $? 1 "Global server, local connection"
1374 for a in ${NSA_IP} ${VRF_IP}
1380 run_cmd_nsb nettest -r ${a}
1381 log_test_addr ${a} $? 0 "Global server"
1387 run_cmd_nsb nettest -r ${a}
1388 log_test_addr ${a} $? 0 "VRF server"
1393 run_cmd_nsb nettest -r ${a}
1394 log_test_addr ${a} $? 1 "No server"
1397 a=${NSA_IP}
1402 run_cmd_nsb nettest -r ${a}
1403 log_test_addr ${a} $? 0 "Device server"
1406 for a in ${NSA_IP} ${VRF_IP}
1412 run_cmd nettest -r ${a}
1413 log_test_addr ${a} $? 1 "Global server, local connection"
1419 for a in ${NSB_IP} ${NSB_LO_IP}
1424 run_cmd nettest -r ${a} -d ${VRF}
1425 log_test_addr ${a} $? 0 "Client, VRF bind"
1430 run_cmd nettest -r ${a} -d ${NSA_DEV}
1431 log_test_addr ${a} $? 0 "Client, device bind"
1435 run_cmd nettest -r ${a} -d ${VRF}
1436 log_test_addr ${a} $? 1 "No server, VRF client"
1440 run_cmd nettest -r ${a} -d ${NSA_DEV}
1441 log_test_addr ${a} $? 1 "No server, device client"
1444 for a in ${NSA_IP} ${VRF_IP} 127.0.0.1
1449 run_cmd nettest -r ${a} -d ${VRF} -0 ${a}
1450 log_test_addr ${a} $? 0 "VRF server, VRF client, local connection"
1453 a=${NSA_IP}
1457 run_cmd nettest -r ${a} -d ${NSA_DEV} -0 ${a}
1458 log_test_addr ${a} $? 0 "VRF server, device client, local connection"
1464 run_cmd nettest -r ${a}
1465 log_test_addr ${a} $? 1 "VRF server, unbound client, local connection"
1470 run_cmd nettest -r ${a} -d ${VRF} -0 ${a}
1471 log_test_addr ${a} $? 0 "Device server, VRF client, local connection"
1476 run_cmd nettest -r ${a} -d ${NSA_DEV} -0 ${a}
1477 log_test_addr ${a} $? 0 "Device server, device client, local connection"
1505 local a
1510 for a in ${NSA_IP} ${NSA_LO_IP}
1515 run_cmd_nsb nettest -D -r ${a}
1516 log_test_addr ${a} $? 0 "Global server"
1520 run_cmd_nsb nettest -D -r ${a}
1521 log_test_addr ${a} $? 1 "No server"
1524 a=${NSA_IP}
1528 run_cmd_nsb nettest -D -r ${a}
1529 log_test_addr ${a} $? 0 "Device server"
1534 for a in ${NSB_IP} ${NSB_LO_IP}
1539 run_cmd nettest -D -r ${a} -0 ${NSA_IP}
1540 log_test_addr ${a} $? 0 "Client"
1545 run_cmd nettest -D -r ${a} -d ${NSA_DEV} -0 ${NSA_IP}
1546 log_test_addr ${a} $? 0 "Client, device bind"
1551 run_cmd nettest -D -r ${a} -d ${NSA_DEV} -C -0 ${NSA_IP}
1552 log_test_addr ${a} $? 0 "Client, device send via cmsg"
1557 run_cmd nettest -D -r ${a} -d ${NSA_DEV} -S -0 ${NSA_IP}
1558 log_test_addr ${a} $? 0 "Client, device bind via IP_UNICAST_IF"
1563 run_cmd nettest -D -r ${a} -d ${NSA_DEV} -S -0 ${NSA_IP} -U
1564 log_test_addr ${a} $? 0 "Client, device bind via IP_UNICAST_IF, with connect()"
1569 run_cmd nettest -D -r ${a}
1570 log_test_addr ${a} $? 1 "No server, unbound client"
1574 run_cmd nettest -D -r ${a} -d ${NSA_DEV}
1575 log_test_addr ${a} $? 1 "No server, device client"
1581 for a in ${NSA_IP} ${NSA_LO_IP} 127.0.0.1
1586 run_cmd nettest -D -r ${a} -0 ${a} -1 ${a}
1587 log_test_addr ${a} $? 0 "Global server, local connection"
1590 a=${NSA_IP}
1594 run_cmd nettest -D -r ${a}
1595 log_test_addr ${a} $? 0 "Device server, unbound client, local connection"
1597 for a in ${NSA_LO_IP} 127.0.0.1
1603 run_cmd nettest -D -r ${a}
1604 log_test_addr ${a} $? 1 "Device server, unbound client, local connection"
1607 a=${NSA_IP}
1611 run_cmd nettest -D -d ${NSA_DEV} -r ${a}
1612 log_test_addr ${a} $? 0 "Global server, device client, local connection"
1617 run_cmd nettest -D -d ${NSA_DEV} -C -r ${a}
1618 log_test_addr ${a} $? 0 "Global server, device send via cmsg, local connection"
1623 run_cmd nettest -D -d ${NSA_DEV} -S -r ${a}
1624 log_test_addr ${a} $? 0 "Global server, device client via IP_UNICAST_IF, local connection"
1629 run_cmd nettest -D -d ${NSA_DEV} -S -r ${a} -U
1630 log_test_addr ${a} $? 0 "Global server, device client via IP_UNICAST_IF, local connection, with connect()"
1636 for a in ${NSA_LO_IP} 127.0.0.1
1642 run_cmd nettest -D -r ${a} -d ${NSA_DEV}
1643 log_test_addr ${a} $? 2 "Global server, device client, local connection"
1649 run_cmd nettest -D -r ${a} -d ${NSA_DEV} -C
1650 log_test_addr ${a} $? 1 "Global server, device send via cmsg, local connection"
1656 run_cmd nettest -D -r ${a} -d ${NSA_DEV} -S
1657 log_test_addr ${a} $? 1 "Global server, device client via IP_UNICAST_IF, local connection"
1663 run_cmd nettest -D -r ${a} -d ${NSA_DEV} -S -U
1664 log_test_addr ${a} $? 1 "Global server, device client via IP_UNICAST_IF, local connection, with connect()"
1669 a=${NSA_IP}
1673 run_cmd nettest -D -d ${NSA_DEV} -r ${a} -0 ${a}
1674 log_test_addr ${a} $? 0 "Device server, device client, local conn"
1677 run_cmd nettest -D -d ${NSA_DEV} -r ${a}
1678 log_test_addr ${a} $? 2 "No server, device client, local conn"
1683 # on link (doesn't need to be routed through a gateway).
1686 a=${NSB_IP}
1688 do_run_cmd nettest -B -D -N "${NSA}" -O "${NSB}" -r ${a} --client-dontroute
1689 log_test_addr ${a} $? 0 "SO_DONTROUTE client"
1691 a=${NSB_LO_IP}
1694 do_run_cmd nettest -B -D -N "${NSA}" -O "${NSB}" -r ${a} --client-dontroute
1695 log_test_addr ${a} $? 1 "SO_DONTROUTE client"
1700 local a
1709 for a in ${NSA_IP} ${VRF_IP}
1712 show_hint "Fails because ingress is in a VRF and global server is disabled"
1715 run_cmd_nsb nettest -D -r ${a}
1716 log_test_addr ${a} $? 1 "Global server"
1721 run_cmd_nsb nettest -D -r ${a}
1722 log_test_addr ${a} $? 0 "VRF server"
1727 run_cmd_nsb nettest -D -r ${a}
1728 log_test_addr ${a} $? 0 "Enslaved device server"
1732 run_cmd_nsb nettest -D -r ${a}
1733 log_test_addr ${a} $? 1 "No server"
1739 run_cmd nettest -D -d ${VRF} -r ${a}
1740 log_test_addr ${a} $? 1 "Global server, VRF client, local connection"
1743 a=${NSA_IP}
1747 run_cmd nettest -D -d ${VRF} -r ${a}
1748 log_test_addr ${a} $? 0 "VRF server, VRF client, local conn"
1753 run_cmd nettest -D -d ${NSA_DEV} -r ${a}
1754 log_test_addr ${a} $? 0 "VRF server, enslaved device client, local connection"
1756 a=${NSA_IP}
1760 run_cmd nettest -D -d ${VRF} -r ${a}
1761 log_test_addr ${a} $? 0 "Enslaved device server, VRF client, local conn"
1766 run_cmd nettest -D -d ${NSA_DEV} -r ${a}
1767 log_test_addr ${a} $? 0 "Enslaved device server, device client, local conn"
1776 for a in ${NSA_IP} ${VRF_IP}
1781 run_cmd_nsb nettest -D -r ${a}
1782 log_test_addr ${a} $? 0 "Global server"
1787 run_cmd_nsb nettest -D -r ${a}
1788 log_test_addr ${a} $? 0 "VRF server"
1793 run_cmd_nsb nettest -D -r ${a}
1794 log_test_addr ${a} $? 0 "Enslaved device server"
1798 run_cmd_nsb nettest -D -r ${a}
1799 log_test_addr ${a} $? 1 "No server"
1831 a=${NSA_IP}
1835 run_cmd nettest -D -d ${VRF} -r ${a}
1836 log_test_addr ${a} $? 0 "Global server, VRF client, local conn"
1841 run_cmd nettest -D -d ${VRF} -r ${a}
1842 log_test_addr ${a} $? 0 "VRF server, VRF client, local conn"
1847 run_cmd nettest -D -d ${NSA_DEV} -r ${a}
1848 log_test_addr ${a} $? 0 "VRF server, device client, local conn"
1853 run_cmd nettest -D -d ${VRF} -r ${a}
1854 log_test_addr ${a} $? 0 "Enslaved device server, VRF client, local conn"
1859 run_cmd nettest -D -d ${NSA_DEV} -r ${a}
1860 log_test_addr ${a} $? 0 "Enslaved device server, device client, local conn"
1862 for a in ${VRF_IP} 127.0.0.1
1867 run_cmd nettest -D -d ${VRF} -r ${a}
1868 log_test_addr ${a} $? 0 "Global server, VRF client, local conn"
1871 for a in ${VRF_IP} 127.0.0.1
1876 run_cmd nettest -D -d ${VRF} -r ${a}
1877 log_test_addr ${a} $? 0 "VRF server, VRF client, local conn"
1882 for a in ${NSA_IP} ${VRF_IP} 127.0.0.1
1886 run_cmd nettest -D -d ${VRF} -r ${a}
1887 log_test_addr ${a} $? 1 "No server, VRF client, local conn"
1922 for a in ${NSA_IP} ${NSA_LO_IP}
1925 run_cmd nettest -s -R -P icmp -l ${a} -b
1926 log_test_addr ${a} $? 0 "Raw socket bind to local address"
1929 run_cmd nettest -s -R -P icmp -l ${a} -I ${NSA_DEV} -b
1930 log_test_addr ${a} $? 0 "Raw socket bind to local address after device bind"
1936 a=${NL_IP}
1938 run_cmd nettest -s -R -f -l ${a} -b
1939 log_test_addr ${a} $? 0 "Raw socket bind to nonlocal address"
1942 run_cmd nettest -s -f -l ${a} -b
1943 log_test_addr ${a} $? 0 "TCP socket bind to nonlocal address"
1946 run_cmd nettest -s -D -P icmp -f -l ${a} -b
1947 log_test_addr ${a} $? 0 "ICMP socket bind to nonlocal address"
1952 a=${BCAST_IP}
1954 run_cmd nettest -s -D -P icmp -l ${a} -b
1955 log_test_addr ${a} $? 1 "ICMP socket bind to broadcast address"
1957 a=${MCAST_IP}
1959 run_cmd nettest -s -D -P icmp -l ${a} -b
1960 log_test_addr ${a} $? 1 "ICMP socket bind to multicast address"
1965 a=${NSA_IP}
1967 run_cmd nettest -c ${a} -r ${NSB_IP} -t1 -b
1968 log_test_addr ${a} $? 0 "TCP socket bind to local address"
1971 run_cmd nettest -c ${a} -r ${NSB_IP} -d ${NSA_DEV} -t1 -b
1972 log_test_addr ${a} $? 0 "TCP socket bind to local address after device bind"
1974 # Sadly, the kernel allows binding a socket to a device and then
1978 #a=${NSA_LO_IP}
1981 #run_cmd nettest -s -l ${a} -I ${NSA_DEV} -t1 -b
1982 #log_test_addr ${a} $? 1 "TCP socket bind to out of scope local address"
1990 for a in ${NSA_IP} ${VRF_IP}
1994 run_cmd nettest -s -R -P icmp -l ${a} -b
1995 log_test_addr ${a} $? 1 "Raw socket bind to local address"
1998 run_cmd nettest -s -R -P icmp -l ${a} -I ${NSA_DEV} -b
1999 log_test_addr ${a} $? 0 "Raw socket bind to local address after device bind"
2001 run_cmd nettest -s -R -P icmp -l ${a} -I ${VRF} -b
2002 log_test_addr ${a} $? 0 "Raw socket bind to local address after VRF bind"
2005 a=${NSA_LO_IP}
2008 run_cmd nettest -s -R -P icmp -l ${a} -I ${VRF} -b
2009 log_test_addr ${a} $? 1 "Raw socket bind to out of scope address after VRF bind"
2014 a=${NL_IP}
2016 run_cmd nettest -s -R -f -l ${a} -I ${VRF} -b
2017 log_test_addr ${a} $? 0 "Raw socket bind to nonlocal address after VRF bind"
2020 run_cmd nettest -s -f -l ${a} -I ${VRF} -b
2021 log_test_addr ${a} $? 0 "TCP socket bind to nonlocal address after VRF bind"
2024 run_cmd nettest -s -D -P icmp -f -l ${a} -I ${VRF} -b
2025 log_test_addr ${a} $? 0 "ICMP socket bind to nonlocal address after VRF bind"
2030 a=${BCAST_IP}
2032 run_cmd nettest -s -D -P icmp -l ${a} -I ${VRF} -b
2033 log_test_addr ${a} $? 1 "ICMP socket bind to broadcast address after VRF bind"
2035 a=${MCAST_IP}
2037 run_cmd nettest -s -D -P icmp -l ${a} -I ${VRF} -b
2038 log_test_addr ${a} $? 1 "ICMP socket bind to multicast address after VRF bind"
2043 for a in ${NSA_IP} ${VRF_IP}
2046 run_cmd nettest -s -l ${a} -I ${VRF} -t1 -b
2047 log_test_addr ${a} $? 0 "TCP socket bind to local address"
2050 run_cmd nettest -s -l ${a} -I ${NSA_DEV} -t1 -b
2051 log_test_addr ${a} $? 0 "TCP socket bind to local address after device bind"
2054 a=${NSA_LO_IP}
2057 run_cmd nettest -s -l ${a} -I ${VRF} -t1 -b
2058 log_test_addr ${a} $? 1 "TCP socket bind to invalid local address for VRF"
2062 run_cmd nettest -s -l ${a} -I ${NSA_DEV} -t1 -b
2063 log_test_addr ${a} $? 1 "TCP socket bind to invalid local address for device bind"
2089 local a
2094 for a in ${NSA_IP} ${VRF_IP}
2099 run_cmd_nsb nettest ${varg} -r ${a} &
2103 log_test_addr ${a} 0 0 "${desc}, global server"
2108 for a in ${NSA_IP} ${VRF_IP}
2113 run_cmd_nsb nettest ${varg} -r ${a} &
2117 log_test_addr ${a} 0 0 "${desc}, VRF server"
2122 a=${NSA_IP}
2126 run_cmd_nsb nettest ${varg} -r ${a} &
2130 log_test_addr ${a} 0 0 "${desc}, enslaved device server"
2144 log_test_addr ${a} 0 0 "${desc}, VRF client"
2155 log_test_addr ${a} 0 0 "${desc}, enslaved device client"
2162 for a in ${NSA_IP} ${VRF_IP}
2167 run_cmd nettest ${varg} -d ${VRF} -r ${a} &
2171 log_test_addr ${a} 0 0 "${desc}, global server, VRF client, local"
2176 for a in ${NSA_IP} ${VRF_IP}
2181 run_cmd nettest ${varg} -d ${VRF} -r ${a} &
2185 log_test_addr ${a} 0 0 "${desc}, VRF server and client, local"
2190 a=${NSA_IP}
2195 run_cmd nettest ${varg} -d ${NSA_DEV} -r ${a} &
2199 log_test_addr ${a} 0 0 "${desc}, global server, enslaved device client, local"
2206 run_cmd nettest ${varg} -d ${NSA_DEV} -r ${a} &
2210 log_test_addr ${a} 0 0 "${desc}, VRF server, enslaved device client, local"
2217 run_cmd nettest ${varg} -d ${NSA_DEV} -r ${a} &
2221 log_test_addr ${a} 0 0 "${desc}, enslaved device server and client, local"
2227 local a
2229 for a in ${NSA_IP} ${VRF_IP}
2232 run_cmd_nsb ping -f ${a} &
2236 log_test_addr ${a} 0 0 "Device delete with active traffic - ping in"
2241 a=${NSB_IP}
2243 run_cmd ping -f -I ${VRF} ${a} &
2247 log_test_addr ${a} 0 0 "Device delete with active traffic - ping out"
2269 local a
2271 # should not have an impact, but make a known state
2277 for a in ${NSB_IP6} ${NSB_LO_IP6} ${NSB_LINKIP6}%${NSA_DEV} ${MCAST}%${NSA_DEV}
2280 run_cmd ${ping6} -c1 -w1 ${a}
2281 log_test_addr ${a} $? 0 "ping out"
2284 for a in ${NSB_IP6} ${NSB_LO_IP6}
2287 run_cmd ${ping6} -c1 -w1 -I ${NSA_DEV} ${a}
2288 log_test_addr ${a} $? 0 "ping out, device bind"
2291 run_cmd ${ping6} -c1 -w1 -I ${NSA_LO_IP6} ${a}
2292 log_test_addr ${a} $? 0 "ping out, loopback address bind"
2298 for a in ${NSA_IP6} ${NSA_LO_IP6} ${NSA_LINKIP6}%${NSB_DEV} ${MCAST}%${NSB_DEV}
2301 run_cmd_nsb ${ping6} -c1 -w1 ${a}
2302 log_test_addr ${a} $? 0 "ping in"
2308 for a in ${NSA_IP6} ${NSA_LO_IP6} ::1 ${NSA_LINKIP6}%${NSA_DEV} ${MCAST}%${NSA_DEV}
2311 run_cmd ${ping6} -c1 -w1 ${a}
2312 log_test_addr ${a} $? 0 "ping local, no bind"
2315 for a in ${NSA_IP6} ${NSA_LINKIP6}%${NSA_DEV} ${MCAST}%${NSA_DEV}
2318 run_cmd ${ping6} -c1 -w1 -I ${NSA_DEV} ${a}
2319 log_test_addr ${a} $? 0 "ping local, device bind"
2322 for a in ${NSA_LO_IP6} ::1
2326 run_cmd ${ping6} -c1 -w1 -I ${NSA_DEV} ${a}
2327 log_test_addr ${a} $? 2 "ping local, device bind"
2334 setup_cmd ip -6 rule add pref 32765 from all lookup local
2335 setup_cmd ip -6 rule del pref 0 from all lookup local
2336 setup_cmd ip -6 rule add pref 50 to ${NSB_LO_IP6} prohibit
2337 setup_cmd ip -6 rule add pref 51 from ${NSB_IP6} prohibit
2339 a=${NSB_LO_IP6}
2340 run_cmd ${ping6} -c1 -w1 ${a}
2341 log_test_addr ${a} $? 2 "ping out, blocked by rule"
2344 run_cmd ${ping6} -c1 -w1 -I ${NSA_DEV} ${a}
2345 log_test_addr ${a} $? 2 "ping out, device bind, blocked by rule"
2347 a=${NSA_LO_IP6}
2350 run_cmd_nsb ${ping6} -c1 -w1 ${a}
2351 log_test_addr ${a} $? 1 "ping in, blocked by rule"
2353 setup_cmd ip -6 rule add pref 0 from all lookup local
2354 setup_cmd ip -6 rule del pref 32765 from all lookup local
2355 setup_cmd ip -6 rule del pref 50 to ${NSB_LO_IP6} prohibit
2356 setup_cmd ip -6 rule del pref 51 from ${NSB_IP6} prohibit
2362 setup_cmd ip -6 route del ${NSB_LO_IP6}
2363 setup_cmd ip -6 route add unreachable ${NSB_LO_IP6} metric 10
2364 setup_cmd ip -6 route add unreachable ${NSB_IP6} metric 10
2366 a=${NSB_LO_IP6}
2367 run_cmd ${ping6} -c1 -w1 ${a}
2368 log_test_addr ${a} $? 2 "ping out, blocked by route"
2371 run_cmd ${ping6} -c1 -w1 -I ${NSA_DEV} ${a}
2372 log_test_addr ${a} $? 2 "ping out, device bind, blocked by route"
2374 a=${NSA_LO_IP6}
2377 run_cmd_nsb ${ping6} -c1 -w1 ${a}
2378 log_test_addr ${a} $? 1 "ping in, blocked by route"
2385 setup_cmd ip -6 ro del unreachable ${NSB_LO_IP6}
2386 setup_cmd ip -6 ro del unreachable ${NSB_IP6}
2388 a=${NSB_LO_IP6}
2389 run_cmd ${ping6} -c1 -w1 ${a}
2390 log_test_addr ${a} $? 2 "ping out, unreachable route"
2393 run_cmd ${ping6} -c1 -w1 -I ${NSA_DEV} ${a}
2394 log_test_addr ${a} $? 2 "ping out, device bind, unreachable route"
2399 local a
2407 for a in ${NSB_IP6} ${NSB_LO_IP6}
2410 run_cmd ${ping6} -c1 -w1 -I ${VRF} ${a}
2411 log_test_addr ${a} $? 0 "ping out, VRF bind"
2414 for a in ${NSB_LINKIP6}%${VRF} ${MCAST}%${VRF}
2418 run_cmd ${ping6} -c1 -w1 ${a}
2419 log_test_addr ${a} $? 1 "ping out, VRF bind"
2422 for a in ${NSB_IP6} ${NSB_LO_IP6} ${NSB_LINKIP6}%${NSA_DEV} ${MCAST}%${NSA_DEV}
2425 run_cmd ${ping6} -c1 -w1 -I ${NSA_DEV} ${a}
2426 log_test_addr ${a} $? 0 "ping out, device bind"
2429 for a in ${NSB_IP6} ${NSB_LO_IP6} ${NSB_LINKIP6}%${NSA_DEV}
2432 run_cmd ip vrf exec ${VRF} ${ping6} -c1 -w1 -I ${VRF_IP6} ${a}
2433 log_test_addr ${a} $? 0 "ping out, vrf device+address bind"
2439 for a in ${NSA_IP6} ${VRF_IP6} ${NSA_LINKIP6}%${NSB_DEV} ${MCAST}%${NSB_DEV}
2442 run_cmd_nsb ${ping6} -c1 -w1 ${a}
2443 log_test_addr ${a} $? 0 "ping in"
2446 a=${NSA_LO_IP6}
2449 run_cmd_nsb ${ping6} -c1 -w1 ${a}
2450 log_test_addr ${a} $? 1 "ping in"
2455 for a in ${NSA_IP6} ${VRF_IP6} ::1
2458 show_hint "Source address should be ${a}"
2459 run_cmd ${ping6} -c1 -w1 -I ${VRF} ${a}
2460 log_test_addr ${a} $? 0 "ping local, VRF bind"
2463 for a in ${NSA_IP6} ${NSA_LINKIP6}%${NSA_DEV} ${MCAST}%${NSA_DEV}
2466 run_cmd ${ping6} -c1 -w1 -I ${NSA_DEV} ${a}
2467 log_test_addr ${a} $? 0 "ping local, device bind"
2471 setup_cmd_nsb ip -6 addr del ${NSB_IP6}/64 dev ${NSB_DEV}
2472 setup_cmd_nsb ip -6 addr del ${NSB_LO_IP6}/128 dev lo
2473 setup_cmd_nsb ip -6 ro add ${NSA_IP6}/128 via ${NSA_LINKIP6} dev ${NSB_DEV}
2475 for a in ${NSA_IP6} ${VRF_IP6}
2479 log_test_addr ${a} $? 0 "ping in, LLA to GUA"
2482 setup_cmd_nsb ip -6 ro del ${NSA_IP6}/128 via ${NSA_LINKIP6} dev ${NSB_DEV}
2483 setup_cmd_nsb ip -6 addr add ${NSB_IP6}/64 dev ${NSB_DEV}
2484 setup_cmd_nsb ip -6 addr add ${NSB_LO_IP6}/128 dev lo
2490 setup_cmd ip -6 rule add pref 50 to ${NSB_LO_IP6} prohibit
2491 setup_cmd ip -6 rule add pref 51 from ${NSB_IP6} prohibit
2493 a=${NSB_LO_IP6}
2494 run_cmd ${ping6} -c1 -w1 ${a}
2495 log_test_addr ${a} $? 2 "ping out, blocked by rule"
2498 run_cmd ${ping6} -c1 -w1 -I ${NSA_DEV} ${a}
2499 log_test_addr ${a} $? 2 "ping out, device bind, blocked by rule"
2501 a=${NSA_LO_IP6}
2504 run_cmd_nsb ${ping6} -c1 -w1 ${a}
2505 log_test_addr ${a} $? 1 "ping in, blocked by rule"
2508 setup_cmd ip -6 rule del pref 50 to ${NSB_LO_IP6} prohibit
2509 setup_cmd ip -6 rule del pref 51 from ${NSB_IP6} prohibit
2515 setup_cmd ip -6 ro del ${NSB_LO_IP6} vrf ${VRF}
2517 a=${NSB_LO_IP6}
2518 run_cmd ${ping6} -c1 -w1 ${a}
2519 log_test_addr ${a} $? 2 "ping out, unreachable route"
2522 run_cmd ${ping6} -c1 -w1 -I ${NSA_DEV} ${a}
2523 log_test_addr ${a} $? 2 "ping out, device bind, unreachable route"
2525 ip -netns ${NSB} -6 ro del ${NSA_LO_IP6}
2526 a=${NSA_LO_IP6}
2528 run_cmd_nsb ${ping6} -c1 -w1 ${a}
2529 log_test_addr ${a} $? 2 "ping in, unreachable route"
2565 run_cmd nettest -6 -s -M ${MD5_PW} -m ${NSB_IP6} &
2567 run_cmd_nsb nettest -6 -r ${NSA_IP6} -X ${MD5_PW}
2573 run_cmd nettest -6 -s &
2575 run_cmd_nsb nettest -6 -r ${NSA_IP6} -X ${MD5_PW}
2581 run_cmd nettest -6 -s -M ${MD5_PW} -m ${NSB_IP6} &
2583 run_cmd_nsb nettest -6 -r ${NSA_IP6} -X ${MD5_WRONG_PW}
2589 run_cmd nettest -6 -s -M ${MD5_PW} -m ${NSB_LO_IP6} &
2591 run_cmd_nsb nettest -6 -r ${NSA_IP6} -X ${MD5_PW}
2600 run_cmd nettest -6 -s -M ${MD5_PW} -m ${NS_NET6} &
2602 run_cmd_nsb nettest -6 -r ${NSA_IP6} -X ${MD5_PW}
2608 run_cmd nettest -6 -s -M ${MD5_PW} -m ${NS_NET6} &
2610 run_cmd_nsb nettest -6 -r ${NSA_IP6} -X ${MD5_WRONG_PW}
2616 run_cmd nettest -6 -s -M ${MD5_PW} -m ${NS_NET6} &
2618 run_cmd_nsb nettest -6 -c ${NSB_LO_IP6} -r ${NSA_IP6} -X ${MD5_PW}
2633 run_cmd nettest -6 -s -I ${VRF} -M ${MD5_PW} -m ${NSB_IP6} &
2635 run_cmd_nsb nettest -6 -r ${NSA_IP6} -X ${MD5_PW}
2641 run_cmd nettest -6 -s -I ${VRF} &
2643 run_cmd_nsb nettest -6 -r ${NSA_IP6} -X ${MD5_PW}
2649 run_cmd nettest -6 -s -I ${VRF} -M ${MD5_PW} -m ${NSB_IP6} &
2651 run_cmd_nsb nettest -6 -r ${NSA_IP6} -X ${MD5_WRONG_PW}
2657 run_cmd nettest -6 -s -I ${VRF} -M ${MD5_PW} -m ${NSB_LO_IP6} &
2659 run_cmd_nsb nettest -6 -r ${NSA_IP6} -X ${MD5_PW}
2668 run_cmd nettest -6 -s -I ${VRF} -M ${MD5_PW} -m ${NS_NET6} &
2670 run_cmd_nsb nettest -6 -r ${NSA_IP6} -X ${MD5_PW}
2676 run_cmd nettest -6 -s -I ${VRF} -M ${MD5_PW} -m ${NS_NET6} &
2678 run_cmd_nsb nettest -6 -r ${NSA_IP6} -X ${MD5_WRONG_PW}
2684 run_cmd nettest -6 -s -I ${VRF} -M ${MD5_PW} -m ${NS_NET6} &
2686 run_cmd_nsb nettest -6 -c ${NSB_LO_IP6} -r ${NSA_IP6} -X ${MD5_PW}
2690 # duplicate config between default VRF and a VRF
2694 run_cmd nettest -6 -s -I ${VRF} -M ${MD5_PW} -m ${NSB_IP6} &
2695 run_cmd nettest -6 -s -M ${MD5_WRONG_PW} -m ${NSB_IP6} &
2697 run_cmd_nsb nettest -6 -r ${NSA_IP6} -X ${MD5_PW}
2701 run_cmd nettest -6 -s -I ${VRF} -M ${MD5_PW} -m ${NSB_IP6} &
2702 run_cmd nettest -6 -s -M ${MD5_WRONG_PW} -m ${NSB_IP6} &
2704 run_cmd_nsc nettest -6 -r ${NSA_IP6} -X ${MD5_WRONG_PW}
2709 run_cmd nettest -6 -s -I ${VRF} -M ${MD5_PW} -m ${NSB_IP6} &
2710 run_cmd nettest -6 -s -M ${MD5_WRONG_PW} -m ${NSB_IP6} &
2712 run_cmd_nsc nettest -6 -r ${NSA_IP6} -X ${MD5_PW}
2717 run_cmd nettest -6 -s -I ${VRF} -M ${MD5_PW} -m ${NSB_IP6} &
2718 run_cmd nettest -6 -s -M ${MD5_WRONG_PW} -m ${NSB_IP6} &
2720 run_cmd_nsb nettest -6 -r ${NSA_IP6} -X ${MD5_WRONG_PW}
2724 run_cmd nettest -6 -s -I ${VRF} -M ${MD5_PW} -m ${NS_NET6} &
2725 run_cmd nettest -6 -s -M ${MD5_WRONG_PW} -m ${NS_NET6} &
2727 run_cmd_nsb nettest -6 -r ${NSA_IP6} -X ${MD5_PW}
2731 run_cmd nettest -6 -s -I ${VRF} -M ${MD5_PW} -m ${NS_NET6} &
2732 run_cmd nettest -6 -s -M ${MD5_WRONG_PW} -m ${NS_NET6} &
2734 run_cmd_nsc nettest -6 -r ${NSA_IP6} -X ${MD5_WRONG_PW}
2739 run_cmd nettest -6 -s -I ${VRF} -M ${MD5_PW} -m ${NS_NET6} &
2740 run_cmd nettest -6 -s -M ${MD5_WRONG_PW} -m ${NS_NET6} &
2742 run_cmd_nsc nettest -6 -r ${NSA_IP6} -X ${MD5_PW}
2747 run_cmd nettest -6 -s -I ${VRF} -M ${MD5_PW} -m ${NS_NET6} &
2748 run_cmd nettest -6 -s -M ${MD5_WRONG_PW} -m ${NS_NET6} &
2750 run_cmd_nsb nettest -6 -r ${NSA_IP6} -X ${MD5_WRONG_PW}
2757 run_cmd nettest -6 -s -I ${NSA_DEV} -M ${MD5_PW} -m ${NSB_IP6}
2758 log_test $? 1 "MD5: VRF: Device must be a VRF - single address"
2761 run_cmd nettest -6 -s -I ${NSA_DEV} -M ${MD5_PW} -m ${NS_NET6}
2762 log_test $? 1 "MD5: VRF: Device must be a VRF - prefix"
2768 local a
2773 for a in ${NSA_IP6} ${NSA_LO_IP6} ${NSA_LINKIP6}%${NSB_DEV}
2776 run_cmd nettest -6 -s &
2778 run_cmd_nsb nettest -6 -r ${a}
2779 log_test_addr ${a} $? 0 "Global server"
2783 for a in ${NSA_IP6} ${NSA_LO_IP6} ${NSA_LINKIP6}%${NSB_DEV}
2787 run_cmd_nsb nettest -6 -r ${a}
2788 log_test_addr ${a} $? 1 "No server"
2794 for a in ${NSB_IP6} ${NSB_LO_IP6} ${NSB_LINKIP6}%${NSA_DEV}
2797 run_cmd_nsb nettest -6 -s &
2799 run_cmd nettest -6 -r ${a}
2800 log_test_addr ${a} $? 0 "Client"
2803 for a in ${NSB_IP6} ${NSB_LO_IP6} ${NSB_LINKIP6}%${NSA_DEV}
2806 run_cmd_nsb nettest -6 -s &
2808 run_cmd nettest -6 -r ${a} -d ${NSA_DEV}
2809 log_test_addr ${a} $? 0 "Client, device bind"
2812 for a in ${NSB_IP6} ${NSB_LO_IP6} ${NSB_LINKIP6}%${NSA_DEV}
2816 run_cmd nettest -6 -r ${a} -d ${NSA_DEV}
2817 log_test_addr ${a} $? 1 "No server, device client"
2823 for a in ${NSA_IP6} ${NSA_LO_IP6} ::1
2826 run_cmd nettest -6 -s &
2828 run_cmd nettest -6 -r ${a}
2829 log_test_addr ${a} $? 0 "Global server, local connection"
2832 a=${NSA_IP6}
2834 run_cmd nettest -6 -s -I ${NSA_DEV} -3 ${NSA_DEV} &
2836 run_cmd nettest -6 -r ${a} -0 ${a}
2837 log_test_addr ${a} $? 0 "Device server, unbound client, local connection"
2839 for a in ${NSA_LO_IP6} ::1
2843 run_cmd nettest -6 -s -I ${NSA_DEV} &
2845 run_cmd nettest -6 -r ${a}
2846 log_test_addr ${a} $? 1 "Device server, unbound client, local connection"
2849 a=${NSA_IP6}
2851 run_cmd nettest -6 -s &
2853 run_cmd nettest -6 -r ${a} -d ${NSA_DEV} -0 ${a}
2854 log_test_addr ${a} $? 0 "Global server, device client, local connection"
2856 for a in ${NSA_LO_IP6} ::1
2860 run_cmd nettest -6 -s &
2862 run_cmd nettest -6 -r ${a} -d ${NSA_DEV}
2863 log_test_addr ${a} $? 1 "Global server, device client, local connection"
2866 for a in ${NSA_IP6} ${NSA_LINKIP6}
2869 run_cmd nettest -6 -s -I ${NSA_DEV} -3 ${NSA_DEV} &
2871 run_cmd nettest -6 -d ${NSA_DEV} -r ${a}
2872 log_test_addr ${a} $? 0 "Device server, device client, local conn"
2875 for a in ${NSA_IP6} ${NSA_LINKIP6}
2879 run_cmd nettest -6 -d ${NSA_DEV} -r ${a}
2880 log_test_addr ${a} $? 1 "No server, device client, local conn"
2888 local a
2898 for a in ${NSA_IP6} ${VRF_IP6} ${NSA_LINKIP6}%${NSB_DEV}
2902 run_cmd nettest -6 -s &
2904 run_cmd_nsb nettest -6 -r ${a}
2905 log_test_addr ${a} $? 1 "Global server"
2908 for a in ${NSA_IP6} ${VRF_IP6}
2911 run_cmd nettest -6 -s -I ${VRF} -3 ${VRF} &
2913 run_cmd_nsb nettest -6 -r ${a}
2914 log_test_addr ${a} $? 0 "VRF server"
2918 a=${NSA_LINKIP6}%${NSB_DEV}
2920 run_cmd nettest -6 -s -I ${VRF} -3 ${NSA_DEV} &
2922 run_cmd_nsb nettest -6 -r ${a}
2923 log_test_addr ${a} $? 0 "VRF server"
2925 for a in ${NSA_IP6} ${VRF_IP6} ${NSA_LINKIP6}%${NSB_DEV}
2928 run_cmd nettest -6 -s -I ${NSA_DEV} -3 ${NSA_DEV} &
2930 run_cmd_nsb nettest -6 -r ${a}
2931 log_test_addr ${a} $? 0 "Device server"
2935 for a in ${NSA_IP6} ${VRF_IP6} ${NSA_LINKIP6}%${NSB_DEV}
2939 run_cmd_nsb nettest -6 -r ${a}
2940 log_test_addr ${a} $? 1 "No server"
2944 a=${NSA_IP6}
2947 run_cmd nettest -6 -s &
2949 run_cmd nettest -6 -r ${a} -d ${NSA_DEV}
2950 log_test_addr ${a} $? 1 "Global server, local connection"
2965 for a in ${NSA_IP6} ${VRF_IP6}
2968 run_cmd nettest -6 -s -3 ${VRF} &
2970 run_cmd_nsb nettest -6 -r ${a}
2971 log_test_addr ${a} $? 0 "Global server"
2974 for a in ${NSA_IP6} ${VRF_IP6}
2977 run_cmd nettest -6 -s -I ${VRF} -3 ${VRF} &
2979 run_cmd_nsb nettest -6 -r ${a}
2980 log_test_addr ${a} $? 0 "VRF server"
2984 a=${NSA_LINKIP6}%${NSB_DEV}
2986 run_cmd nettest -6 -s -3 ${NSA_DEV} &
2988 run_cmd_nsb nettest -6 -r ${a}
2989 log_test_addr ${a} $? 0 "Global server"
2992 run_cmd nettest -6 -s -I ${VRF} -3 ${NSA_DEV} &
2994 run_cmd_nsb nettest -6 -r ${a}
2995 log_test_addr ${a} $? 0 "VRF server"
2997 for a in ${NSA_IP6} ${NSA_LINKIP6}%${NSB_DEV}
3000 run_cmd nettest -6 -s -I ${NSA_DEV} -3 ${NSA_DEV} &
3002 run_cmd_nsb nettest -6 -r ${a}
3003 log_test_addr ${a} $? 0 "Device server"
3007 for a in ${NSA_IP6} ${VRF_IP6} ${NSA_LINKIP6}%${NSB_DEV}
3011 run_cmd_nsb nettest -6 -r ${a}
3012 log_test_addr ${a} $? 1 "No server"
3016 for a in ${NSA_IP6} ${VRF_IP6}
3020 run_cmd nettest -6 -s -I ${VRF} &
3022 run_cmd nettest -6 -r ${a}
3023 log_test_addr ${a} $? 1 "Global server, local connection"
3030 for a in ${NSB_IP6} ${NSB_LO_IP6}
3033 run_cmd_nsb nettest -6 -s &
3035 run_cmd nettest -6 -r ${a} -d ${VRF}
3036 log_test_addr ${a} $? 0 "Client, VRF bind"
3039 a=${NSB_LINKIP6}
3042 run_cmd_nsb nettest -6 -s &
3044 run_cmd nettest -6 -r ${a} -d ${VRF}
3045 log_test_addr ${a} $? 1 "Client, VRF bind"
3047 for a in ${NSB_IP6} ${NSB_LO_IP6} ${NSB_LINKIP6}
3050 run_cmd_nsb nettest -6 -s &
3052 run_cmd nettest -6 -r ${a} -d ${NSA_DEV}
3053 log_test_addr ${a} $? 0 "Client, device bind"
3056 for a in ${NSB_IP6} ${NSB_LO_IP6}
3060 run_cmd nettest -6 -r ${a} -d ${VRF}
3061 log_test_addr ${a} $? 1 "No server, VRF client"
3064 for a in ${NSB_IP6} ${NSB_LO_IP6} ${NSB_LINKIP6}
3068 run_cmd nettest -6 -r ${a} -d ${NSA_DEV}
3069 log_test_addr ${a} $? 1 "No server, device client"
3072 for a in ${NSA_IP6} ${VRF_IP6} ::1
3075 run_cmd nettest -6 -s -I ${VRF} -3 ${VRF} &
3077 run_cmd nettest -6 -r ${a} -d ${VRF} -0 ${a}
3078 log_test_addr ${a} $? 0 "VRF server, VRF client, local connection"
3081 a=${NSA_IP6}
3083 run_cmd nettest -6 -s -I ${VRF} -3 ${VRF} &
3085 run_cmd nettest -6 -r ${a} -d ${NSA_DEV} -0 ${a}
3086 log_test_addr ${a} $? 0 "VRF server, device client, local connection"
3088 a=${NSA_IP6}
3091 run_cmd nettest -6 -s -I ${VRF} &
3093 run_cmd nettest -6 -r ${a}
3094 log_test_addr ${a} $? 1 "VRF server, unbound client, local connection"
3097 run_cmd nettest -6 -s -I ${NSA_DEV} -3 ${NSA_DEV} &
3099 run_cmd nettest -6 -r ${a} -d ${VRF} -0 ${a}
3100 log_test_addr ${a} $? 0 "Device server, VRF client, local connection"
3102 for a in ${NSA_IP6} ${NSA_LINKIP6}
3105 run_cmd nettest -6 -s -I ${NSA_DEV} -3 ${NSA_DEV} &
3107 run_cmd nettest -6 -r ${a} -d ${NSA_DEV} -0 ${a}
3108 log_test_addr ${a} $? 0 "Device server, device client, local connection"
3137 local a
3142 for a in ${NSA_IP6} ${NSA_LINKIP6}%${NSB_DEV}
3145 run_cmd nettest -6 -D -s -3 ${NSA_DEV} &
3147 run_cmd_nsb nettest -6 -D -r ${a}
3148 log_test_addr ${a} $? 0 "Global server"
3151 run_cmd nettest -6 -D -I ${NSA_DEV} -s -3 ${NSA_DEV} &
3153 run_cmd_nsb nettest -6 -D -r ${a}
3154 log_test_addr ${a} $? 0 "Device server"
3157 a=${NSA_LO_IP6}
3159 run_cmd nettest -6 -D -s -3 ${NSA_DEV} &
3161 run_cmd_nsb nettest -6 -D -r ${a}
3162 log_test_addr ${a} $? 0 "Global server"
3164 # should fail since loopback address is out of scope for a device
3169 #run_cmd nettest -6 -D -I ${NSA_DEV} -s -3 ${NSA_DEV} &
3171 #run_cmd_nsb nettest -6 -D -r ${a}
3172 #log_test_addr ${a} $? 1 "Device server"
3175 for a in ${NSA_IP6} ${NSA_LO_IP6} ${NSA_LINKIP6}%${NSB_DEV}
3179 run_cmd_nsb nettest -6 -D -r ${a}
3180 log_test_addr ${a} $? 1 "No server"
3186 for a in ${NSB_IP6} ${NSB_LO_IP6} ${NSB_LINKIP6}%${NSA_DEV}
3189 run_cmd_nsb nettest -6 -D -s &
3191 run_cmd nettest -6 -D -r ${a} -0 ${NSA_IP6}
3192 log_test_addr ${a} $? 0 "Client"
3195 run_cmd_nsb nettest -6 -D -s &
3197 run_cmd nettest -6 -D -r ${a} -d ${NSA_DEV} -0 ${NSA_IP6}
3198 log_test_addr ${a} $? 0 "Client, device bind"
3201 run_cmd_nsb nettest -6 -D -s &
3203 run_cmd nettest -6 -D -r ${a} -d ${NSA_DEV} -C -0 ${NSA_IP6}
3204 log_test_addr ${a} $? 0 "Client, device send via cmsg"
3207 run_cmd_nsb nettest -6 -D -s &
3209 run_cmd nettest -6 -D -r ${a} -d ${NSA_DEV} -S -0 ${NSA_IP6}
3210 log_test_addr ${a} $? 0 "Client, device bind via IPV6_UNICAST_IF"
3214 run_cmd nettest -6 -D -r ${a}
3215 log_test_addr ${a} $? 1 "No server, unbound client"
3219 run_cmd nettest -6 -D -r ${a} -d ${NSA_DEV}
3220 log_test_addr ${a} $? 1 "No server, device client"
3226 for a in ${NSA_IP6} ${NSA_LO_IP6} ::1
3229 run_cmd nettest -6 -D -s &
3231 run_cmd nettest -6 -D -r ${a} -0 ${a} -1 ${a}
3232 log_test_addr ${a} $? 0 "Global server, local connection"
3235 a=${NSA_IP6}
3237 run_cmd nettest -6 -s -D -I ${NSA_DEV} -3 ${NSA_DEV} &
3239 run_cmd nettest -6 -D -r ${a}
3240 log_test_addr ${a} $? 0 "Device server, unbound client, local connection"
3242 for a in ${NSA_LO_IP6} ::1
3246 run_cmd nettest -6 -s -D -I ${NSA_DEV} &
3248 run_cmd nettest -6 -D -r ${a}
3249 log_test_addr ${a} $? 1 "Device server, local connection"
3252 a=${NSA_IP6}
3254 run_cmd nettest -6 -s -D &
3256 run_cmd nettest -6 -D -d ${NSA_DEV} -r ${a}
3257 log_test_addr ${a} $? 0 "Global server, device client, local connection"
3260 run_cmd nettest -6 -s -D &
3262 run_cmd nettest -6 -D -d ${NSA_DEV} -C -r ${a}
3263 log_test_addr ${a} $? 0 "Global server, device send via cmsg, local connection"
3266 run_cmd nettest -6 -s -D &
3268 run_cmd nettest -6 -D -d ${NSA_DEV} -S -r ${a}
3269 log_test_addr ${a} $? 0 "Global server, device client via IPV6_UNICAST_IF, local connection"
3271 for a in ${NSA_LO_IP6} ::1
3275 run_cmd nettest -6 -D -s &
3277 run_cmd nettest -6 -D -r ${a} -d ${NSA_DEV}
3278 log_test_addr ${a} $? 1 "Global server, device client, local connection"
3282 run_cmd nettest -6 -D -s &
3284 run_cmd nettest -6 -D -r ${a} -d ${NSA_DEV} -C
3285 log_test_addr ${a} $? 1 "Global server, device send via cmsg, local connection"
3289 run_cmd nettest -6 -D -s &
3291 run_cmd nettest -6 -D -r ${a} -d ${NSA_DEV} -S
3292 log_test_addr ${a} $? 1 "Global server, device client via IP_UNICAST_IF, local connection"
3296 run_cmd nettest -6 -D -s &
3298 run_cmd nettest -6 -D -r ${a} -d ${NSA_DEV} -S -U
3299 log_test_addr ${a} $? 1 "Global server, device client via IP_UNICAST_IF, local connection, with connect()"
3302 a=${NSA_IP6}
3304 run_cmd nettest -6 -D -s -I ${NSA_DEV} -3 ${NSA_DEV} &
3306 run_cmd nettest -6 -D -d ${NSA_DEV} -r ${a} -0 ${a}
3307 log_test_addr ${a} $? 0 "Device server, device client, local conn"
3311 run_cmd nettest -6 -D -d ${NSA_DEV} -r ${a}
3312 log_test_addr ${a} $? 1 "No server, device client, local conn"
3315 run_cmd_nsb ip -6 addr del ${NSB_IP6}/64 dev ${NSB_DEV}
3316 run_cmd_nsb ip -6 ro add ${NSA_IP6}/128 dev ${NSB_DEV}
3318 run_cmd nettest -6 -s -D &
3320 run_cmd_nsb nettest -6 -D -r ${NSA_IP6}
3323 run_cmd_nsb ip -6 ro del ${NSA_IP6}/128 dev ${NSB_DEV}
3324 run_cmd_nsb ip -6 addr add ${NSB_IP6}/64 dev ${NSB_DEV} nodad
3329 local a
3338 for a in ${NSA_IP6} ${VRF_IP6}
3342 run_cmd nettest -6 -D -s &
3344 run_cmd_nsb nettest -6 -D -r ${a}
3345 log_test_addr ${a} $? 1 "Global server"
3348 for a in ${NSA_IP6} ${VRF_IP6}
3351 run_cmd nettest -6 -D -I ${VRF} -s -3 ${NSA_DEV} &
3353 run_cmd_nsb nettest -6 -D -r ${a}
3354 log_test_addr ${a} $? 0 "VRF server"
3357 for a in ${NSA_IP6} ${VRF_IP6}
3360 run_cmd nettest -6 -D -I ${NSA_DEV} -s -3 ${NSA_DEV} &
3362 run_cmd_nsb nettest -6 -D -r ${a}
3363 log_test_addr ${a} $? 0 "Enslaved device server"
3367 for a in ${NSA_IP6} ${VRF_IP6}
3371 run_cmd_nsb nettest -6 -D -r ${a}
3372 log_test_addr ${a} $? 1 "No server"
3378 for a in ${NSA_IP6} ${VRF_IP6}
3382 run_cmd nettest -6 -D -s &
3384 run_cmd nettest -6 -D -d ${VRF} -r ${a}
3385 log_test_addr ${a} $? 1 "Global server, VRF client, local conn"
3388 for a in ${NSA_IP6} ${VRF_IP6}
3391 run_cmd nettest -6 -D -I ${VRF} -s &
3393 run_cmd nettest -6 -D -d ${VRF} -r ${a}
3394 log_test_addr ${a} $? 0 "VRF server, VRF client, local conn"
3397 a=${NSA_IP6}
3400 run_cmd nettest -6 -D -s &
3402 run_cmd nettest -6 -D -d ${NSA_DEV} -r ${a}
3403 log_test_addr ${a} $? 1 "Global server, device client, local conn"
3406 run_cmd nettest -6 -D -I ${VRF} -s -3 ${NSA_DEV} &
3408 run_cmd nettest -6 -D -d ${NSA_DEV} -r ${a}
3409 log_test_addr ${a} $? 0 "VRF server, device client, local conn"
3412 run_cmd nettest -6 -D -I ${NSA_DEV} -s -3 ${NSA_DEV} &
3414 run_cmd nettest -6 -D -d ${VRF} -r ${a}
3415 log_test_addr ${a} $? 0 "Enslaved device server, VRF client, local conn"
3418 run_cmd nettest -6 -D -I ${NSA_DEV} -s -3 ${NSA_DEV} &
3420 run_cmd nettest -6 -D -d ${NSA_DEV} -r ${a}
3421 log_test_addr ${a} $? 0 "Enslaved device server, device client, local conn"
3430 for a in ${NSA_IP6} ${VRF_IP6}
3433 run_cmd nettest -6 -D -s -3 ${NSA_DEV} &
3435 run_cmd_nsb nettest -6 -D -r ${a}
3436 log_test_addr ${a} $? 0 "Global server"
3439 for a in ${NSA_IP6} ${VRF_IP6}
3442 run_cmd nettest -6 -D -I ${VRF} -s -3 ${NSA_DEV} &
3444 run_cmd_nsb nettest -6 -D -r ${a}
3445 log_test_addr ${a} $? 0 "VRF server"
3448 for a in ${NSA_IP6} ${VRF_IP6}
3451 run_cmd nettest -6 -D -I ${NSA_DEV} -s -3 ${NSA_DEV} &
3453 run_cmd_nsb nettest -6 -D -r ${a}
3454 log_test_addr ${a} $? 0 "Enslaved device server"
3458 for a in ${NSA_IP6} ${VRF_IP6}
3461 run_cmd_nsb nettest -6 -D -r ${a}
3462 log_test_addr ${a} $? 1 "No server"
3469 run_cmd_nsb nettest -6 -D -s &
3471 run_cmd nettest -6 -D -d ${VRF} -r ${NSB_IP6}
3476 run_cmd nettest -6 -D -d ${VRF} -r ${NSB_IP6}
3480 run_cmd_nsb nettest -6 -D -s &
3482 run_cmd nettest -6 -D -d ${NSA_DEV} -r ${NSB_IP6}
3487 run_cmd nettest -6 -D -d ${NSA_DEV} -r ${NSB_IP6}
3493 a=${NSA_IP6}
3495 run_cmd nettest -6 -D -s -3 ${NSA_DEV} &
3497 run_cmd nettest -6 -D -d ${VRF} -r ${a}
3498 log_test_addr ${a} $? 0 "Global server, VRF client, local conn"
3501 run_cmd nettest -6 -D -I ${VRF} -s -3 ${NSA_DEV} &
3503 run_cmd nettest -6 -D -d ${VRF} -r ${a}
3504 log_test_addr ${a} $? 0 "VRF server, VRF client, local conn"
3507 a=${VRF_IP6}
3509 run_cmd nettest -6 -D -s -3 ${VRF} &
3511 run_cmd nettest -6 -D -d ${VRF} -r ${a}
3512 log_test_addr ${a} $? 0 "Global server, VRF client, local conn"
3515 run_cmd nettest -6 -D -I ${VRF} -s -3 ${VRF} &
3517 run_cmd nettest -6 -D -d ${VRF} -r ${a}
3518 log_test_addr ${a} $? 0 "VRF server, VRF client, local conn"
3521 for a in ${NSA_IP6} ${VRF_IP6}
3524 run_cmd nettest -6 -D -d ${VRF} -r ${a}
3525 log_test_addr ${a} $? 1 "No server, VRF client, local conn"
3529 a=${NSA_IP6}
3531 run_cmd nettest -6 -D -s -3 ${NSA_DEV} &
3533 run_cmd nettest -6 -D -d ${NSA_DEV} -r ${a}
3534 log_test_addr ${a} $? 0 "Global server, device client, local conn"
3537 run_cmd nettest -6 -D -I ${VRF} -s -3 ${NSA_DEV} &
3539 run_cmd nettest -6 -D -d ${NSA_DEV} -r ${a}
3540 log_test_addr ${a} $? 0 "VRF server, device client, local conn"
3543 run_cmd nettest -6 -D -I ${NSA_DEV} -s -3 ${NSA_DEV} &
3545 run_cmd nettest -6 -D -d ${VRF} -r ${a}
3546 log_test_addr ${a} $? 0 "Device server, VRF client, local conn"
3549 run_cmd nettest -6 -D -I ${NSA_DEV} -s -3 ${NSA_DEV} &
3551 run_cmd nettest -6 -D -d ${NSA_DEV} -r ${a}
3552 log_test_addr ${a} $? 0 "Device server, device client, local conn"
3555 run_cmd nettest -6 -D -d ${NSA_DEV} -r ${a}
3556 log_test_addr ${a} $? 1 "No server, device client, local conn"
3561 run_cmd nettest -6 -D -s &
3563 run_cmd_nsb nettest -6 -D -d ${NSB_DEV} -r ${NSA_LINKIP6}
3567 run_cmd_nsb nettest -6 -D -d ${NSB_DEV} -r ${NSA_LINKIP6}
3572 run_cmd_nsb nettest -6 -D -s &
3574 run_cmd nettest -6 -D -d ${NSA_DEV} -r ${NSB_LINKIP6}
3578 run_cmd nettest -6 -D -d ${NSA_DEV} -r ${NSB_LINKIP6}
3583 run_cmd nettest -6 -D -s &
3585 run_cmd nettest -6 -D -d ${NSA_DEV} -r ${NSA_LINKIP6}
3589 run_cmd nettest -6 -D -d ${NSA_DEV} -r ${NSA_LINKIP6}
3593 run_cmd_nsb ip -6 addr del ${NSB_IP6}/64 dev ${NSB_DEV}
3594 run_cmd_nsb ip -6 ro add ${NSA_IP6}/128 dev ${NSB_DEV}
3596 run_cmd nettest -6 -s -D &
3598 run_cmd_nsb nettest -6 -D -r ${NSA_IP6}
3601 run_cmd_nsb ip -6 ro del ${NSA_IP6}/128 dev ${NSB_DEV}
3602 run_cmd_nsb ip -6 addr add ${NSB_IP6}/64 dev ${NSB_DEV} nodad
3636 for a in ${NSA_IP6} ${NSA_LO_IP6}
3639 run_cmd nettest -6 -s -R -P ipv6-icmp -l ${a} -b
3640 log_test_addr ${a} $? 0 "Raw socket bind to local address"
3643 run_cmd nettest -6 -s -R -P ipv6-icmp -l ${a} -I ${NSA_DEV} -b
3644 log_test_addr ${a} $? 0 "Raw socket bind to local address after device bind"
3650 a=${NL_IP6}
3652 run_cmd nettest -6 -s -R -P icmp -f -l ${a} -I ${NSA_DEV} -b
3653 log_test_addr ${a} $? 0 "Raw socket bind to nonlocal address"
3658 a=${NSA_IP6}
3660 run_cmd nettest -6 -s -l ${a} -t1 -b
3661 log_test_addr ${a} $? 0 "TCP socket bind to local address"
3664 run_cmd nettest -6 -s -l ${a} -I ${NSA_DEV} -t1 -b
3665 log_test_addr ${a} $? 0 "TCP socket bind to local address after device bind"
3667 # Sadly, the kernel allows binding a socket to a device and then
3670 a=${NSA_LO_IP6}
3673 run_cmd nettest -6 -s -l ${a} -I ${NSA_DEV} -t1 -b
3674 log_test_addr ${a} $? 0 "TCP socket bind to out of scope local address"
3682 for a in ${NSA_IP6} ${VRF_IP6}
3685 run_cmd nettest -6 -s -R -P ipv6-icmp -l ${a} -I ${VRF} -b
3686 log_test_addr ${a} $? 0 "Raw socket bind to local address after vrf bind"
3689 run_cmd nettest -6 -s -R -P ipv6-icmp -l ${a} -I ${NSA_DEV} -b
3690 log_test_addr ${a} $? 0 "Raw socket bind to local address after device bind"
3693 a=${NSA_LO_IP6}
3696 run_cmd nettest -6 -s -R -P ipv6-icmp -l ${a} -I ${VRF} -b
3697 log_test_addr ${a} $? 1 "Raw socket bind to invalid local address after vrf bind"
3702 a=${NL_IP6}
3704 run_cmd nettest -6 -s -R -P icmp -f -l ${a} -I ${VRF} -b
3705 log_test_addr ${a} $? 0 "Raw socket bind to nonlocal address after VRF bind"
3710 # address on enslaved device is valid for the VRF or device in a VRF
3711 for a in ${NSA_IP6} ${VRF_IP6}
3714 run_cmd nettest -6 -s -l ${a} -I ${VRF} -t1 -b
3715 log_test_addr ${a} $? 0 "TCP socket bind to local address with VRF bind"
3718 a=${NSA_IP6}
3720 run_cmd nettest -6 -s -l ${a} -I ${NSA_DEV} -t1 -b
3721 log_test_addr ${a} $? 0 "TCP socket bind to local address with device bind"
3723 # Sadly, the kernel allows binding a socket to a device and then
3727 a=${VRF_IP6}
3730 run_cmd nettest -6 -s -l ${a} -I ${NSA_DEV} -t1 -b
3731 log_test_addr ${a} $? 0 "TCP socket bind to VRF address with device bind"
3733 a=${NSA_LO_IP6}
3736 run_cmd nettest -6 -s -l ${a} -I ${VRF} -t1 -b
3737 log_test_addr ${a} $? 1 "TCP socket bind to invalid local address for VRF"
3741 run_cmd nettest -6 -s -l ${a} -I ${NSA_DEV} -t1 -b
3742 log_test_addr ${a} $? 1 "TCP socket bind to invalid local address for device bind"
3765 local varg="-6 $2"
3767 local a
3772 for a in ${NSA_IP6} ${VRF_IP6}
3777 run_cmd_nsb nettest ${varg} -r ${a} &
3781 log_test_addr ${a} 0 0 "${desc}, global server"
3786 for a in ${NSA_IP6} ${VRF_IP6}
3791 run_cmd_nsb nettest ${varg} -r ${a} &
3795 log_test_addr ${a} 0 0 "${desc}, VRF server"
3800 for a in ${NSA_IP6} ${VRF_IP6}
3805 run_cmd_nsb nettest ${varg} -r ${a} &
3809 log_test_addr ${a} 0 0 "${desc}, enslaved device server"
3843 for a in ${NSA_IP6} ${VRF_IP6}
3848 run_cmd nettest ${varg} -d ${VRF} -r ${a} &
3852 log_test_addr ${a} 0 0 "${desc}, global server, VRF client"
3857 for a in ${NSA_IP6} ${VRF_IP6}
3862 run_cmd nettest ${varg} -d ${VRF} -r ${a} &
3866 log_test_addr ${a} 0 0 "${desc}, VRF server and client"
3871 a=${NSA_IP6}
3875 run_cmd nettest ${varg} -d ${NSA_DEV} -r ${a} &
3879 log_test_addr ${a} 0 0 "${desc}, global server, device client"
3886 run_cmd nettest ${varg} -d ${NSA_DEV} -r ${a} &
3890 log_test_addr ${a} 0 0 "${desc}, VRF server, device client"
3897 run_cmd nettest ${varg} -d ${NSA_DEV} -r ${a} &
3901 log_test_addr ${a} 0 0 "${desc}, device server, device client"
3907 local a
3909 a=${NSA_IP6}
3911 run_cmd_nsb ${ping6} -f ${a} &
3915 log_test_addr ${a} 0 0 "Device delete with active traffic - ping in"
3924 log_test_addr ${a} 0 0 "Device delete with active traffic - ping out"
3949 local a
3951 for a in ${NSA_IP} ${VRF_IP}
3956 run_cmd_nsb nettest -r ${a}
3957 log_test_addr ${a} $? 1 "Global server, reject with TCP-reset on Rx"
3965 local a
3969 for a in ${NSA_IP} ${VRF_IP}
3974 run_cmd_nsb nettest ${arg} -r ${a}
3975 log_test_addr ${a} $? 1 "Global ${stype} server, Rx reject icmp-port-unreach"
3985 run_cmd iptables -A INPUT -p tcp --dport 12345 -j REJECT --reject-with tcp-reset
3994 run_cmd iptables -A INPUT -p tcp --dport 12345 -j REJECT --reject-with icmp-port-unreachable
3995 run_cmd iptables -A INPUT -p udp --dport 12345 -j REJECT --reject-with icmp-port-unreachable
4006 local a
4008 for a in ${NSA_IP6} ${VRF_IP6}
4011 run_cmd nettest -6 -s &
4013 run_cmd_nsb nettest -6 -r ${a}
4014 log_test_addr ${a} $? 1 "Global server, reject with TCP-reset on Rx"
4022 local a
4026 for a in ${NSA_IP6} ${VRF_IP6}
4029 run_cmd nettest -6 -s ${arg} &
4031 run_cmd_nsb nettest -6 ${arg} -r ${a}
4032 log_test_addr ${a} $? 1 "Global ${stype} server, Rx reject icmp-port-unreach"
4042 run_cmd ip6tables -A INPUT -p tcp --dport 12345 -j REJECT --reject-with tcp-reset
4050 run_cmd ip6tables -A INPUT -p tcp --dport 12345 -j REJECT --reject-with icmp6-port-unreachable
4051 run_cmd ip6tables -A INPUT -p udp --dport 12345 -j REJECT --reject-with icmp6-port-unreachable
4064 # ns-A device enslaved to bridge. Verify traffic with and without
4072 setup_cmd ip -6 addr del dev ${NSA_DEV} ${NSA_IP6}/64
4076 setup_cmd ip -6 addr add dev br0 ${NSA_IP6}/64 nodad
4125 setup_cmd ip -6 addr add dev br0.100 2001:db8:101::1/64 nodad
4129 setup_cmd_nsb ip -6 addr add dev vlan100 2001:db8:101::2/64 nodad
4175 # ns-A device is connected to both ns-B and ns-C on a single VRF but only has
4180 # only want reply from ns-A
4191 # cycle/flap the first ns-A interface
4202 # cycle/flap the second ns-A interface
4214 # Perform IPv{4,6} SNAT on ns-A, and verify TCP connection is successfully
4222 run_cmd iptables -t nat -A POSTROUTING -p tcp -m tcp --dport ${port} -j SNAT --to-source ${NSA_LO_IP} -o ${VRF}
4223 run_cmd ip6tables -t nat -A POSTROUTING -p tcp -m tcp --dport ${port} -j SNAT --to-source ${NSA_LO_IP6} -o ${VRF}
4230 run_cmd_nsb nettest -6 -s -l ${NSB_IP6} -p ${port} &
4232 run_cmd nettest -6 -d ${VRF} -r ${NSB_IP6} -p ${port}
4260 -6 IPv6 tests only
4277 # note: each TEST_ group needs a dedicated runner, e.g. fcnal-ipv4.sh
4286 6) TESTS=ipv6;;