/testing/guestbin/swan-prep
road #
 ip route del default
road #
 ip addr del 192.1.33.222/24 dev eth0 2>/dev/null
road #
 sleep 2
road #
 ip addr add 192.1.3.209/24 dev eth0 2>/dev/null
road #
 ip route add default via 192.1.3.254
road #
 ipsec start
Redirecting to: [initsystem]
road #
 ../../guestbin/wait-until-pluto-started
road #
 ipsec auto --add road-eastnet
002 "road-eastnet": added IKEv2 connection
road #
 echo "initdone"
initdone
road #
 ipsec auto --up road-eastnet
1v2 "road-eastnet"[1] 192.1.2.23 #1: initiating IKEv2 connection
1v2 "road-eastnet"[1] 192.1.2.23 #1: sent IKE_SA_INIT request
1v2 "road-eastnet"[1] 192.1.2.23 #1: sent IKE_AUTH request {cipher=AES_GCM_16_256 integ=n/a prf=HMAC_SHA2_512 group=MODP2048}
003 "road-eastnet"[1] 192.1.2.23 #1: established IKE SA; authenticated using authby=secret and peer ID_IPV4_ADDR '192.1.2.23'
002 "road-eastnet"[1] 192.1.2.23 #2: received INTERNAL_IP4_ADDRESS 192.0.3.10
004 "road-eastnet"[1] 192.1.2.23 #2: established Child SA using #1; IPsec tunnel [192.0.3.10-192.0.3.10:0-65535 0] -> [0.0.0.0-255.255.255.255:0-65535 0] {ESPinUDP/ESN=>0xESPESP <0xESPESP xfrm=AES_CBC_256-HMAC_SHA2_256_128 NATD=192.1.2.23:4500 DPD=passive}
road #
 ping -n -q -W 1 -c 2 192.1.2.23
PING 192.1.2.23 (192.1.2.23) 56(84) bytes of data.
--- 192.1.2.23 ping statistics ---
2 packets transmitted, 2 received, 0% packet loss, time XXXX
rtt min/avg/max/mdev = 0.XXX/0.XXX/0.XXX/0.XXX ms
road #
 ipsec whack --trafficstatus
006 #2: "road-eastnet"[1] 192.1.2.23, type=ESP, add_time=1234567890, inBytes=168, outBytes=168, id='192.1.2.23', lease=192.0.3.10/32
road #
 # note this end should be 192.1.3.209
road #
 ip xfrm state
src 192.1.2.23 dst 192.1.3.209
	encap type espinudp sport 4500 dport 4500 addr 0.0.0.0
	anti-replay esn context:
	 seq-hi 0x0, seq 0xXX, oseq-hi 0x0, oseq 0xXX
	 replay_window 128, bitmap-length 4
	 00000000 00000000 00000000 XXXXXXXX 
src 192.1.3.209 dst 192.1.2.23
	encap type espinudp sport 4500 dport 4500 addr 0.0.0.0
	anti-replay esn context:
	 seq-hi 0x0, seq 0xXX, oseq-hi 0x0, oseq 0xXX
	 replay_window 128, bitmap-length 4
	 00000000 00000000 00000000 XXXXXXXX 
road #
 ip xfrm policy
src 192.0.3.10/32 dst 0.0.0.0/0 
	dir out priority PRIORITY ptype main 
	tmpl src 192.1.3.209 dst 192.1.2.23
src 0.0.0.0/0 dst 192.0.3.10/32 
	dir fwd priority PRIORITY ptype main 
	tmpl src 192.1.2.23 dst 192.1.3.209
src 0.0.0.0/0 dst 192.0.3.10/32 
	dir in priority PRIORITY ptype main 
	tmpl src 192.1.2.23 dst 192.1.3.209
src 192.0.2.0/24 dst 192.1.3.209/32 
	dir fwd priority PRIORITY ptype main 
src 192.0.2.0/24 dst 192.1.3.209/32 
	dir in priority PRIORITY ptype main 
src 192.1.3.209/32 dst 192.0.2.0/24 
	dir out priority PRIORITY ptype main 
src 192.1.2.0/24 dst 192.1.3.209/32 
	dir fwd priority PRIORITY ptype main 
src 192.1.2.0/24 dst 192.1.3.209/32 
	dir in priority PRIORITY ptype main 
src 192.1.3.209/32 dst 192.1.2.0/24 
	dir out priority PRIORITY ptype main 
src 192.1.2.129/32 dst 192.1.3.209/32 
	dir fwd priority PRIORITY ptype main 
src 192.1.2.129/32 dst 192.1.3.209/32 
	dir in priority PRIORITY ptype main 
src 192.1.3.209/32 dst 192.1.2.129/32 
	dir out priority PRIORITY ptype main 
src 192.1.2.130/32 dst 192.1.3.209/32 
	dir fwd priority PRIORITY ptype main 
src 192.1.2.130/32 dst 192.1.3.209/32 
	dir in priority PRIORITY ptype main 
src 192.1.3.209/32 dst 192.1.2.130/32 
	dir out priority PRIORITY ptype main 
src 192.1.2.254/32 dst 192.1.3.209/32 
	dir fwd priority PRIORITY ptype main 
src 192.1.2.254/32 dst 192.1.3.209/32 
	dir in priority PRIORITY ptype main 
src 192.1.3.209/32 dst 192.1.2.254/32 
	dir out priority PRIORITY ptype main 
road #
 sleep 5
road #
 # remove this end ip next one will take over
road #
 ip addr show scope global dev eth0 | grep -v valid_lft
2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 state UP
    link/ether 12:00:00:ab:cd:02 brd ff:ff:ff:ff:ff:ff
    inet 192.1.3.209/24 scope global eth0
road #
 # delete the routes down to simulate WiFi link down.
road #
 ip addr del 192.1.3.209/24 dev eth0
road #
 ip route del default via 192.1.3.254 dev eth0
RTNETLINK answers: No such process
road #
 sleep 2
road #
 ip addr add 192.1.33.222/24 dev eth0
road #
 sleep 2
road #
 # the client is still on the dev lo.
road #
 # would the traffic leak in plain
road #
 # let libreswan detect change and initiate MOBIKE update
road #
 ip route add default via 192.1.33.254 dev eth0
road #
 sleep 10
road #
 # ip addr show scope global dev eth0 | grep -v -E '(valid_lft|ether|noqueue)'
road #
 ip addr show scope global dev eth0 | grep -v valid_lft
2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 state UP
    link/ether 12:00:00:ab:cd:02 brd ff:ff:ff:ff:ff:ff
    inet 192.1.33.222/24 scope global eth0
road #
 # MOBIKE ping should work
road #
 ping -n -q -W 8 -c 8 192.1.2.23
PING 192.1.2.23 (192.1.2.23) 56(84) bytes of data.
--- 192.1.2.23 ping statistics ---
8 packets transmitted, 8 received, 0% packet loss, time XXXX
rtt min/avg/max/mdev = 0.XXX/0.XXX/0.XXX/0.XXX ms
road #
 # "ip xfrm" output this end should be 192.1.33.222
road #
 echo done
done
road #
 ipsec whack --trafficstatus
006 #2: "road-eastnet"[1] 192.1.2.23, type=ESP, add_time=1234567890, inBytes=840, outBytes=840, id='192.1.2.23', lease=192.0.3.10/32
road #
 ip xfrm state
src 192.1.2.23 dst 192.1.33.222
	encap type espinudp sport 4500 dport 4500 addr 0.0.0.0
	anti-replay esn context:
	 seq-hi 0x0, seq 0xXX, oseq-hi 0x0, oseq 0xXX
	 replay_window 128, bitmap-length 4
	 00000000 00000000 00000000 XXXXXXXX 
src 192.1.33.222 dst 192.1.2.23
	encap type espinudp sport 4500 dport 4500 addr 0.0.0.0
	anti-replay esn context:
	 seq-hi 0x0, seq 0xXX, oseq-hi 0x0, oseq 0xXX
	 replay_window 128, bitmap-length 4
	 00000000 00000000 00000000 XXXXXXXX 
road #
 ip xfrm policy
src 192.0.3.10/32 dst 0.0.0.0/0 
	dir out priority PRIORITY ptype main 
	tmpl src 192.1.33.222 dst 192.1.2.23
src 0.0.0.0/0 dst 192.0.3.10/32 
	dir fwd priority PRIORITY ptype main 
	tmpl src 192.1.2.23 dst 192.1.33.222
src 0.0.0.0/0 dst 192.0.3.10/32 
	dir in priority PRIORITY ptype main 
	tmpl src 192.1.2.23 dst 192.1.33.222
src 192.0.2.0/24 dst 192.1.3.209/32 
	dir fwd priority PRIORITY ptype main 
src 192.0.2.0/24 dst 192.1.3.209/32 
	dir in priority PRIORITY ptype main 
src 192.1.3.209/32 dst 192.0.2.0/24 
	dir out priority PRIORITY ptype main 
src 192.1.2.0/24 dst 192.1.3.209/32 
	dir fwd priority PRIORITY ptype main 
src 192.1.2.0/24 dst 192.1.3.209/32 
	dir in priority PRIORITY ptype main 
src 192.1.3.209/32 dst 192.1.2.0/24 
	dir out priority PRIORITY ptype main 
src 192.1.2.129/32 dst 192.1.3.209/32 
	dir fwd priority PRIORITY ptype main 
src 192.1.2.129/32 dst 192.1.3.209/32 
	dir in priority PRIORITY ptype main 
src 192.1.3.209/32 dst 192.1.2.129/32 
	dir out priority PRIORITY ptype main 
src 192.1.2.130/32 dst 192.1.3.209/32 
	dir fwd priority PRIORITY ptype main 
src 192.1.2.130/32 dst 192.1.3.209/32 
	dir in priority PRIORITY ptype main 
src 192.1.3.209/32 dst 192.1.2.130/32 
	dir out priority PRIORITY ptype main 
src 192.1.2.254/32 dst 192.1.3.209/32 
	dir fwd priority PRIORITY ptype main 
src 192.1.2.254/32 dst 192.1.3.209/32 
	dir in priority PRIORITY ptype main 
src 192.1.3.209/32 dst 192.1.2.254/32 
	dir out priority PRIORITY ptype main 
road #
 
