/testing/guestbin/swan-prep
road #
 # delete the address 33.222 before re-run. otherwise strongswan may choose 33.222
road #
 ip addr show dev eth0 | grep 192.1.33.222 && ip addr del 192.1.33.222/24 dev eth0
road #
 ip route show scope global | grep "192.1.33.254" && ip route del default via 192.1.33.254
road #
 # add .209 in case re-run
road #
 ip addr show dev eth0 | grep 192.1.3.209 || ip addr add 192.1.3.209/24 dev eth0
    inet 192.1.3.209/24 scope global eth0
road #
 ip addr add 192.1.33.222/24 dev eth0
road #
 # add default gw, it could have been deleted due address changes
road #
 ip route | grep default || ip route add default via 192.1.3.254
default via 192.1.3.254 dev eth0
road #
 # routes and address setup done
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 to 192.1.2.23:500
002 "road-eastnet"[1] 192.1.2.23 #1: Received unauthenticated INVALID_KE_PAYLOAD response to DH MODP2048; resending with suggested DH DH31
1v2 "road-eastnet"[1] 192.1.2.23 #1: sent IKE_SA_INIT request to 192.1.2.23:500
1v2 "road-eastnet"[1] 192.1.2.23 #1: sent IKE_AUTH request {cipher=AES_CBC_256 integ=HMAC_SHA2_256_128 prf=HMAC_SHA2_256 group=DH31}
003 "road-eastnet"[1] 192.1.2.23 #1: initiator established IKE SA; authenticated peer using authby=secret and ID_FQDN '@east'
002 "road-eastnet"[1] 192.1.2.23 #2: received INTERNAL_IP4_ADDRESS 192.0.3.1
004 "road-eastnet"[1] 192.1.2.23 #2: initiator established Child SA using #1; IPsec tunnel [192.0.3.1-192.0.3.1:0-65535 0] -> [192.0.2.0-192.0.2.255:0-65535 0] {ESP=>0xESPESP <0xESPESP xfrm=AES_CBC_256-HMAC_SHA2_256_128 DPD=passive}
road #
 ping -n -q -W 1 -c 2 192.0.2.254
PING 192.0.2.254 (192.0.2.254) 56(84) bytes of data.
--- 192.0.2.254 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, maxBytes=2^63B, id='@east', lease=192.0.3.1/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
	proto esp spi 0xSPISPI reqid REQID mode tunnel
	replay-window 0 flag af-unspec
	auth-trunc hmac(sha256) 0xHASHKEY 128
	enc cbc(aes) 0xENCKEY
	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
	proto esp spi 0xSPISPI reqid REQID mode tunnel
	replay-window 0 flag af-unspec
	auth-trunc hmac(sha256) 0xHASHKEY 128
	enc cbc(aes) 0xENCKEY
	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.1/32 dst 192.0.2.0/24 
	dir out priority PRIORITY ptype main 
	tmpl src 192.1.3.209 dst 192.1.2.23
		proto esp reqid REQID mode tunnel
src 192.0.2.0/24 dst 192.0.3.1/32 
	dir fwd priority PRIORITY ptype main 
	tmpl src 192.1.2.23 dst 192.1.3.209
		proto esp reqid REQID mode tunnel
src 192.0.2.0/24 dst 192.0.3.1/32 
	dir in priority PRIORITY ptype main 
	tmpl src 192.1.2.23 dst 192.1.3.209
		proto esp reqid REQID mode tunnel
src 0.0.0.0/0 dst 0.0.0.0/0 
	socket out priority 0 ptype main 
src 0.0.0.0/0 dst 0.0.0.0/0 
	socket in priority 0 ptype main 
src 0.0.0.0/0 dst 0.0.0.0/0 
	socket out priority 0 ptype main 
src 0.0.0.0/0 dst 0.0.0.0/0 
	socket in priority 0 ptype main 
src 0.0.0.0/0 dst 0.0.0.0/0 
	socket out priority 0 ptype main 
src 0.0.0.0/0 dst 0.0.0.0/0 
	socket in priority 0 ptype main 
src 0.0.0.0/0 dst 0.0.0.0/0 
	socket out priority 0 ptype main 
src 0.0.0.0/0 dst 0.0.0.0/0 
	socket in priority 0 ptype main 
src 0.0.0.0/0 dst 0.0.0.0/0 
	socket out priority 0 ptype main 
src 0.0.0.0/0 dst 0.0.0.0/0 
	socket in priority 0 ptype main 
src 0.0.0.0/0 dst 0.0.0.0/0 
	socket out priority 0 ptype main 
src 0.0.0.0/0 dst 0.0.0.0/0 
	socket in priority 0 ptype main 
road #
 sleep 15
road #
 # remove this end ip next one will take over
road #
 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 eth0
road #
 ip route show scope global | grep 192.1.33.254 || ip route add default via 192.1.33.254
road #
 ip addr del 192.1.3.209/24 dev eth0
road #
 ip route show scope global
default via 192.1.33.254 dev eth0
road #
 ip addr show scope global
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
       valid_lft forever preferred_lft forever
3: ip_vti0@NONE: <NOARP> mtu XXXX qdisc noop state DOWN group default
    link/ipip 0.0.0.0 brd 0.0.0.0
road #
 # let libreswan detect change and do a MOBIKE update
road #
 sleep 10
road #
 # both ends updated MOBIKE ping should work
road #
 # note this end should be 192.1.33.222
road #
 ipsec whack --trafficstatus
006 #2: "road-eastnet"[1] 192.1.2.23, type=ESP, add_time=1234567890, inBytes=168, outBytes=168, maxBytes=2^63B, id='@east', lease=192.0.3.1/32
road #
 ping -n -q -W 1 -c 4 -I 192.0.3.1 192.0.2.254
PING 192.0.2.254 (192.0.2.254) from 192.0.3.1 : 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
road #
 ipsec whack --trafficstatus
006 #2: "road-eastnet"[1] 192.1.2.23, type=ESP, add_time=1234567890, inBytes=504, outBytes=504, maxBytes=2^63B, id='@east', lease=192.0.3.1/32
road #
 echo done
done
road #
 ../../guestbin/ipsec-look.sh
road NOW
XFRM state:
src 192.1.2.23 dst 192.1.33.222
	proto esp spi 0xSPISPI reqid REQID mode tunnel
	replay-window 0 flag af-unspec
	auth-trunc hmac(sha256) 0xHASHKEY 128
	enc cbc(aes) 0xENCKEY
	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
	proto esp spi 0xSPISPI reqid REQID mode tunnel
	replay-window 0 flag af-unspec
	auth-trunc hmac(sha256) 0xHASHKEY 128
	enc cbc(aes) 0xENCKEY
	anti-replay esn context:
	 seq-hi 0x0, seq 0xXX, oseq-hi 0x0, oseq 0xXX
	 replay_window 128, bitmap-length 4
	 00000000 00000000 00000000 XXXXXXXX 
XFRM policy:
src 192.0.2.0/24 dst 192.0.3.1/32
	dir fwd priority PRIORITY ptype main
	tmpl src 192.1.2.23 dst 192.1.33.222
		proto esp reqid REQID mode tunnel
src 192.0.2.0/24 dst 192.0.3.1/32
	dir in priority PRIORITY ptype main
	tmpl src 192.1.2.23 dst 192.1.33.222
		proto esp reqid REQID mode tunnel
src 192.0.3.1/32 dst 192.0.2.0/24
	dir out priority PRIORITY ptype main
	tmpl src 192.1.33.222 dst 192.1.2.23
		proto esp reqid REQID mode tunnel
XFRM done
IPSEC mangle TABLES
iptables filter TABLE
Chain INPUT (policy ACCEPT)
target     prot opt source               destination         
Chain FORWARD (policy ACCEPT)
target     prot opt source               destination         
Chain OUTPUT (policy ACCEPT)
target     prot opt source               destination         
ROUTING TABLES
default via 192.1.33.254 dev eth0
192.0.2.0/24 via 192.1.33.254 dev eth0 src 192.0.3.1
192.1.33.0/24 dev eth0 proto kernel scope link src 192.1.33.222
NSS_CERTIFICATES
Certificate Nickname                                         Trust Attributes
                                                             SSL,S/MIME,JAR/XPI
road #
 if [ -f /var/run/pluto/pluto.pid ]; then ipsec whack --trafficstatus ; fi
006 #2: "road-eastnet"[1] 192.1.2.23, type=ESP, add_time=1234567890, inBytes=504, outBytes=504, maxBytes=2^63B, id='@east', lease=192.0.3.1/32
road #
 if [ -f /var/run/charon.pid -o -f /var/run/strongswan/charon.pid ]; then strongswan status ; fi
road #
 sleep 7
road #
 
