/testing/guestbin/swan-prep
north #
 # second address on north 193.1.8.22. nic gw 192.1.8.254
north #
 # delete the address 193.1.8.22 before re-run. otherwise pluto may choose it.
north #
 ip addr show dev eth1 | grep 192.1.8.22 && ip addr del 192.1.8.22/24 dev eth1
north #
 ip route show scope global | grep "192.1.8.254" && ip route del default via 192.1.8.254
north #
 # add .33 for re-run
north #
 ip addr show dev eth1 | grep 192.1.3.33 || ip addr add 192.1.3.33/24 dev eth1
    inet 192.1.3.33/24 scope global eth1
north #
 ip addr add 192.1.8.22/24 dev eth1
north #
 # add default gw, it could have been deleted due address changes
north #
 ip route | grep default || ip route add default via 192.1.3.254
default via 192.1.3.254 dev eth1
north #
 # routes and addresses setup for the test
north #
 ipsec start
Redirecting to: [initsystem]
north #
 ../../guestbin/wait-until-pluto-started
north #
 ipsec auto --add northnet-eastnet
"northnet-eastnet": added IKEv2 connection
north #
 echo "initdone"
initdone
north #
 ipsec auto --up northnet-eastnet
"northnet-eastnet" #1: initiating IKEv2 connection to 192.1.2.23 using UDP
"northnet-eastnet" #1: sent IKE_SA_INIT request to 192.1.2.23:UDP/500
"northnet-eastnet" #1: processed IKE_SA_INIT response from 192.1.2.23:UDP/500 {cipher=AES_GCM_16_256 integ=n/a prf=HMAC_SHA2_512 group=DH19}, initiating IKE_AUTH
"northnet-eastnet" #1: sent IKE_AUTH request to 192.1.2.23:UDP/500
"northnet-eastnet" #1: initiator established IKE SA; authenticated peer using authby=secret and ID_IPV4_ADDR '192.1.2.23'
"northnet-eastnet" #2: initiator established Child SA using #1; IPsec tunnel [192.0.3.0/24===192.0.2.0/24] {ESP/ESN=>0xESPESP <0xESPESP xfrm=AES_GCM_16_128-NONE DPD=passive}
north #
 ../../guestbin/ping-once.sh --up -I 192.0.3.254  192.0.2.254
up
north #
 ipsec whack --trafficstatus
#2: "northnet-eastnet", type=ESP, add_time=1234567890, inBytes=84, outBytes=84, maxBytes=2^63B, id='192.1.2.23'
north #
 # note this end should be 192.1.3.33
north #
 ../../guestbin/ipsec-kernel-state.sh
src 192.1.3.33 dst 192.1.2.23
	lastused YYYY-MM-DD HH:MM:SS
	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.2.23 dst 192.1.3.33
	lastused YYYY-MM-DD HH:MM:SS
	anti-replay esn context:
	 seq-hi 0x0, seq 0xXX, oseq-hi 0x0, oseq 0xXX
	 replay_window 128, bitmap-length 4
	 00000000 00000000 00000000 XXXXXXXX 
north #
 ip xfrm policy
src 192.0.3.0/24 dst 192.0.2.0/24 
	dir out priority PRIORITY ptype main 
	tmpl src 192.1.3.33 dst 192.1.2.23
src 192.0.2.0/24 dst 192.0.3.0/24 
	dir fwd priority PRIORITY ptype main 
	tmpl src 192.1.2.23 dst 192.1.3.33
src 192.0.2.0/24 dst 192.0.3.0/24 
	dir in priority PRIORITY ptype main 
	tmpl src 192.1.2.23 dst 192.1.3.33
north #
 sleep 5
north #
 # remove this end ip next one will take over
north #
 ip route show scope global | grep 192.1.3.254 && ip route del default via 192.1.3.254
default via 192.1.3.254 dev eth1
north #
 ip route show scope global | grep 192.1.8.254 || ip route add default via 192.1.8.254
north #
 ip addr del 192.1.3.33/24 dev eth1
north #
 # let libreswan detect change and do a MOBIKE update
north #
 sleep 10
north #
 # MOBIKE update and ping should work
north #
 # note this end should be 192.1.8.22
north #
 ../../guestbin/ping-once.sh --up -I 192.0.3.254  192.0.2.254
up
north #
 echo done
done
north #
 ipsec whack --trafficstatus
#2: "northnet-eastnet", type=ESP, add_time=1234567890, inBytes=168, outBytes=168, maxBytes=2^63B, id='192.1.2.23'
north #
 ../../guestbin/ipsec-kernel-state.sh
src 192.1.2.23 dst 192.1.8.22
	lastused YYYY-MM-DD HH:MM:SS
	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.8.22 dst 192.1.2.23
	lastused YYYY-MM-DD HH:MM:SS
	anti-replay esn context:
	 seq-hi 0x0, seq 0xXX, oseq-hi 0x0, oseq 0xXX
	 replay_window 128, bitmap-length 4
	 00000000 00000000 00000000 XXXXXXXX 
north #
 ip xfrm policy
src 192.0.3.0/24 dst 192.0.2.0/24 
	dir out priority PRIORITY ptype main 
	tmpl src 192.1.8.22 dst 192.1.2.23
src 192.0.2.0/24 dst 192.0.3.0/24 
	dir fwd priority PRIORITY ptype main 
	tmpl src 192.1.2.23 dst 192.1.8.22
src 192.0.2.0/24 dst 192.0.3.0/24 
	dir in priority PRIORITY ptype main 
	tmpl src 192.1.2.23 dst 192.1.8.22
north #
 
