Thank you very much bouke for sharing.
Your settings are quite similar to ours and we will probably follow you in using AES256-GCM 128 bits instead of AES128-GCM 128 bits. But we will probably skip hashing for Phase 2.
Phase 1
Key Exchange version: IKEv2
Encryption Algorithm: AES128-GCM
Key length: 128 bits
Hash: AES-XCBC
DH Group: 14 (2048 bit)
Phase 2
Protocol: ESP
Encryption Algorithm: AES128-GCM 128 bits
Hash Algorithms: None selected
PFS key group: 14 (2048 bit)
No hashing is selected for Phase 2 because both the book and online documentation say "With AES-GCM in use, no hash is required. " and "When using AES-GCM, do not select any Hash Algorithm entries as AES- GCM already performs hashing." respectively for Phase 2.
We are using a Protectli device:
Firewall Micro Appliance With 4x Intel Gigabit Ports, Intel Atom E3845, AES-NI, 8GB RAM, 128GB mSATA
CPU Type Intel(R) Atom(TM) CPU E3845 @ 1.91GHz
4 CPUs: 1 package(s) x 4 core(s)
AES-NI CPU Crypto: Yes (active)
Hardware crypto AES-CBC,AES-XTS,AES-GCM,AES-ICM
Version 2.4.4-RELEASE-p3 (amd64)
built on Wed May 15 18:53:44 EDT 2019
FreeBSD 11.2-RELEASE-p10