TheDocumentation Index
Fetch the complete documentation index at: https://mintlify.com/strongswan/strongswan/llms.txt
Use this file to discover all available pages before exploring further.
--list-sas command queries the running charon daemon via VICI and
prints all active Security Associations. Each IKE_SA header is followed by
its CHILD_SAs showing SPIs, traffic selectors, byte/packet counters, and
the negotiated cipher suite.
Synopsis
Options
Filter output to IKE_SAs matching the given configuration name.
Filter output to a single IKE_SA by its unique numeric identifier.
Filter output to CHILD_SAs matching the given configuration name. The parent
IKE_SA header is still shown.
Filter output to a single CHILD_SA by its unique numeric identifier.
Return immediately if an IKE_SA is currently busy (e.g., in the middle of a
rekeying exchange) instead of waiting for it to become idle.
Dump the raw VICI event messages instead of the formatted summary.
Dump the raw VICI event messages with pretty-print indentation. Implies
--raw.VICI socket URI. Overrides the default
unix:///var/run/charon.vici.Example output
Output field reference
IKE_SA header line
| Field | Description |
|---|---|
net-net | Connection configuration name from swanctl.conf |
#1 | Unique numeric ID for this IKE_SA |
ESTABLISHED | SA state: CONNECTING, ESTABLISHED, REKEYING, DELETING |
IKEv2 | IKE protocol version |
aabbccdd..._i | Initiator SPI (64-bit hex). A trailing * means this daemon is the initiator |
8899aabb..._r | Responder SPI (64-bit hex). A trailing * means this daemon is the responder |
IKE_SA endpoint lines
| Field | Description |
|---|---|
local / remote | Local and remote identity (IKE ID) |
@ <ip>[<port>] | UDP endpoint address and port (500 = no NAT, 4500 = NAT-T) |
[<vip>] | Virtual IP assigned via CP payload, if any |
Cipher suite line
<encryption>/<integrity>/<PRF>/<DH-group>. For IKEv2 with AES-GCM,
the integrity algorithm may be omitted (AEAD covers both).
Timing line
| Field | Description |
|---|---|
established Xs ago | Seconds since the IKE_SA was established |
rekeying in Xs | Seconds until automatic rekeying is triggered |
reauth in Xs | Seconds until reauthentication (shown instead of rekeying when reauth_time is configured) |
expires in Xs | Seconds until the SA hard-expires |
CHILD_SA line
| Field | Description |
|---|---|
net-net | CHILD_SA configuration name |
#1 | Unique CHILD_SA ID |
reqid 1 | Kernel request ID used to link the SA to SPD policies |
INSTALLED | State: INSTALLING, INSTALLED, UPDATING, REKEYING, DELETING |
TUNNEL | Mode: TUNNEL or TRANSPORT |
-in-UDP | Appended to mode when UDP encapsulation (NAT-T) is active |
ESP | Security protocol: ESP or AH |
AES_GCM_16-256 | Encryption algorithm and key length |
/MODP_2048 | PFS DH group used during CREATE_CHILD_SA rekey, if any |
SPI / traffic counter lines
| Field | Description |
|---|---|
c1a2b3c4 | 32-bit inbound SPI (used by the kernel to identify the SA) |
bytes | Total bytes processed by this SA |
packets | Total packets processed |
Xs ago | Seconds since the last packet was seen (shown once traffic has passed) |
When IP compression (IPComp) is active, a CPI value appears after the SPI,
formatted as
<spi>/<cpi>.Traffic selector lines
Filtering examples
See also
swanctl --initiate— bring up a new SAswanctl --terminate— tear down a specific SAswanctl --rekey— manually trigger rekeying