/testing/guestbin/swan-prep west # # confirm that the network is alive west # ../../pluto/bin/wait-until-alive -I 192.0.1.254 192.0.2.254 destination -I 192.0.1.254 192.0.2.254 is alive west # ipsec start Redirecting to: [initsystem] west # /testing/pluto/bin/wait-until-pluto-started west # ipsec auto --add westnet-eastnet-ikev2 002 added connection description "westnet-eastnet-ikev2" west # echo "initdone" initdone west # #!/bin/sh west # ipsec auto --up westnet-eastnet-ikev2 002 "westnet-eastnet-ikev2" #1: initiating v2 parent SA 1v2 "westnet-eastnet-ikev2" #1: initiate 1v2 "westnet-eastnet-ikev2" #1: STATE_PARENT_I1: sent v2I1, expected v2R1 1v2 "westnet-eastnet-ikev2" #2: STATE_PARENT_I2: sent v2I2, expected v2R2 {auth=IKEv2 cipher=AES_GCM_16_256 integ=n/a prf=HMAC_SHA2_512 group=MODP2048} 002 "westnet-eastnet-ikev2" #2: IKEv2 mode peer ID is ID_FQDN: '@east' 003 "westnet-eastnet-ikev2" #2: Authenticated using RSA 002 "westnet-eastnet-ikev2" #2: negotiated connection [192.0.1.0-192.0.1.255:0-65535 0] -> [192.0.2.0-192.0.2.255:0-65535 0] 004 "westnet-eastnet-ikev2" #2: STATE_V2_IPSEC_I: IPsec SA established tunnel mode {ESP=>0xESPESP <0xESPESP xfrm=AES_GCM_16_256-NONE NATOA=none NATD=none DPD=active} west # ping -q -n -c 4 -I 192.0.1.254 192.0.2.254 PING 192.0.2.254 (192.0.2.254) from 192.0.1.254 : 56(84) bytes of data. --- 192.0.2.254 ping statistics --- 4 packets transmitted, 4 received, 0% packet loss, time XXXX rtt min/avg/max/mdev = 0.XXX/0.XXX/0.XXX/0.XXX ms west # # Tunnel should be up west # ipsec whack --trafficstatus 006 #2: "westnet-eastnet-ikev2", type=ESP, add_time=1234567890, inBytes=336, outBytes=336, id='@east' west # # Let R_U_THERE packets flow west # sleep 15 west # # Setting up block west # ip route add unreachable 192.1.2.23 west # ../../pluto/bin/wait-until-alive 192.1.2.23 ping -n -c 1 -w 4 192.1.2.23 connect: No route to host destination 192.1.2.23 is dead west # sleep 45 west # # livness/dpd should have triggered now west # # Tunnel should be down with %trap or %hold preventing packet leaks west # # But shuntstatus only shows bare shunts, not connection shunts :( west # conntrack -L -n conntrack vA.B.C (conntrack-tools): 0 flow entries have been shown. west # conntrack -F conntrack vA.B.C (conntrack-tools): connection tracking table has been emptied. west # ipsec whack --trafficstatus west # ipsec whack --shuntstatus 000 Bare Shunt list: 000 west # ipsec status | grep westnet-eastnet-ikev2 000 "westnet-eastnet-ikev2": 192.0.1.0/24===192.1.2.45<192.1.2.45>[@west]...192.1.2.23<192.1.2.23>[@east]===192.0.2.0/24; prospective erouted; eroute owner: #0 000 "westnet-eastnet-ikev2": oriented; my_ip=unset; their_ip=unset; my_updown=ipsec _updown; 000 "westnet-eastnet-ikev2": xauth us:none, xauth them:none, my_username=[any]; their_username=[any] 000 "westnet-eastnet-ikev2": our auth:rsasig, their auth:rsasig 000 "westnet-eastnet-ikev2": modecfg info: us:none, them:none, modecfg policy:push, dns:unset, domains:unset, banner:unset, cat:unset; 000 "westnet-eastnet-ikev2": labeled_ipsec:no; 000 "westnet-eastnet-ikev2": policy_label:unset; 000 "westnet-eastnet-ikev2": ike_life: 3600s; ipsec_life: 28800s; replay_window: 32; rekey_margin: 540s; rekey_fuzz: 100%; keyingtries: 0; 000 "westnet-eastnet-ikev2": retransmit-interval: 9999ms; retransmit-timeout: 99s; 000 "westnet-eastnet-ikev2": initial-contact:no; cisco-unity:no; fake-strongswan:no; send-vendorid:no; send-no-esp-tfc:no; 000 "westnet-eastnet-ikev2": policy: RSASIG+ENCRYPT+TUNNEL+PFS+UP+IKEV2_ALLOW+SAREF_TRACK+IKE_FRAG_ALLOW+ESN_NO; 000 "westnet-eastnet-ikev2": conn_prio: 24,24; interface: eth1; metric: 0; mtu: unset; sa_prio:auto; sa_tfc:none; 000 "westnet-eastnet-ikev2": nflog-group: unset; mark: unset; vti-iface:unset; vti-routing:no; vti-shared:no; nic-offload:auto; 000 "westnet-eastnet-ikev2": our idtype: ID_FQDN; our id=@west; their idtype: ID_FQDN; their id=@east 000 "westnet-eastnet-ikev2": dpd: action:hold; delay:3; timeout:10; nat-t: encaps:auto; nat_keepalive:yes; ikev1_natt:both 000 "westnet-eastnet-ikev2": newest ISAKMP SA: #0; newest IPsec SA: #0; west # # ping should be caught ip route unreachable west # ping -w 2 -q -n -c 3 -I 192.0.1.254 192.0.2.254 PING 192.0.2.254 (192.0.2.254) from 192.0.1.254 : 56(84) bytes of data. --- 192.0.2.254 ping statistics --- 2 packets transmitted, 0 received, 100% packet loss, time XXXX west # # Remove the null route west # ip route del unreachable 192.1.2.23 west # ../../pluto/bin/wait-until-alive 192.1.2.23 destination 192.1.2.23 is alive west # ping -q -n -c 1 -I 192.0.1.254 192.0.2.254 PING 192.0.2.254 (192.0.2.254) from 192.0.1.254 : 56(84) bytes of data. --- 192.0.2.254 ping statistics --- 1 packets transmitted, 0 received, 100% packet loss, time XXXX west # sleep 2 west # # ping should reply west # ping -q -n -c 4 -I 192.0.1.254 192.0.2.254 PING 192.0.2.254 (192.0.2.254) from 192.0.1.254 : 56(84) bytes of data. --- 192.0.2.254 ping statistics --- 4 packets transmitted, 4 received, 0% packet loss, time XXXX rtt min/avg/max/mdev = 0.XXX/0.XXX/0.XXX/0.XXX ms west # # Tunnel should be back up now even without triggering traffic west # ipsec whack --trafficstatus 006 #4: "westnet-eastnet-ikev2", type=ESP, add_time=1234567890, inBytes=336, outBytes=336, id='@east' west # ipsec whack --shuntstatus 000 Bare Shunt list: 000 west # grep -E "liveness action|acquire" OUTPUT/west.pluto.log "westnet-eastnet-ikev2" #2: IKEv2 liveness action - putting connection into hold | xfrm acquire rtattribute type 5 | xfrm acquire rtattribute type 16 | add bare shunt 0xPOINTER 192.0.1.254/32:8 --1--> 192.0.2.254/32:0 => %hold 0 %acquire-netlink initiate on demand from 192.0.1.254:8 to 192.0.2.254:0 proto=1 because: acquire | delete bare shunt 0xPOINTER 192.0.1.254/32:8 --1--> 192.0.2.254/32:0 => %hold 0 %acquire-netlink west # grep -E "liveness: action|acquire" OUTPUT/west.pluto.log | xfrm acquire rtattribute type 5 | xfrm acquire rtattribute type 16 | add bare shunt 0xPOINTER 192.0.1.254/32:8 --1--> 192.0.2.254/32:0 => %hold 0 %acquire-netlink initiate on demand from 192.0.1.254:8 to 192.0.2.254:0 proto=1 because: acquire | delete bare shunt 0xPOINTER 192.0.1.254/32:8 --1--> 192.0.2.254/32:0 => %hold 0 %acquire-netlink west # echo done done west # west # ../bin/check-for-core.sh west # if [ -f /sbin/ausearch ]; then ausearch -r -m avc -ts recent ; fi