IPSEC-_UPDOWN(8)
β¨ ipsec-_updown β the routing manipulation script bestie π
okay so we're talking about ipsec-_updown, which lives in section 8 of the manual (it's a system admin / daemon-land thing, iykyk). It's the little script that does the routing glow-up. Let's get into it π¦
πΈ NAME πΈ
ipsec-_updown β routing manipulation script. that's it, that's the job, and she ate π
β¨ SYNOPSIS β¨
_updown gets invoked by pluto when it has just brought up a new connection. Like, pluto did the thing, and now it's ringing _updown's phone like "bestie come handle the routing."
_updown is invoked by pluto when it has brought up a new connection.
This script is the one that inserts the appropriate routing entries for IPsec operation on some kernel IPsec stacks. And she may also do other necessary work that is kernel or user specific β like defining custom firewall rules, no big deal π
The interface to the script is documented in the pluto man page. Go read that one too, bestie, it's giving β¨ required reading β¨
π VARIABLES π
_updown gets passed a whole lineup of variables, and she uses them to act differently based on the info she's been handed. It's basically a vibe check on the connection. Here's the roster, and no skipping:
PLUTO_VERBβ says the name of the operation to be performed. The options areprepare-host,prepare-client,up-host,up-client,down-hostordown-client. And here's the tea: if the address family for security gateway to security gateway communications is IPv6, then a suffix of-v6gets added to this verb. πPLUTO_CONNECTIONβ the name of the connection we're routing for. her name, her whole identity fr.PLUTO_NEXT_HOPβ the next hop to which packets bound for the peer must be sent. that's where the packets are headed next π¦PLUTO_INTERFACEβ the name of the real interface used by encrypted traffic and IKE traffic. the actual real one, not a fake.PLUTO_MEβ the IP address of our host. hi, that's us πPLUTO_MY_CLIENTβ the IP address / count of our client subnet. And if the client is just the host, this will be the host's own IP address / max β where max is32for IPv4 and128for IPv6. literally just the host being her own client, iconic.PLUTO_MY_CLIENT_NETβ the IP address of our client net. If the client is just the host, this will be the host's own IP address.PLUTO_MY_CLIENT_MASKβ the mask for our client net. If the client is just the host, this will be255.255.255.255.PLUTO_PEERβ the IP address of our peer. the other side of the situationship π«ΆPLUTO_PEER_CLIENTβ the IP address / count of the peer's client subnet. If the client is just the peer, this will be the peer's own IP address / max β where max is32for IPv4 and128for IPv6.PLUTO_PEER_CLIENT_NETβ the IP address of the peer's client net. If the client is just the peer, this will be the peer's own IP address.PLUTO_PEER_CLIENT_MASKβ the mask for the peer's client net. If the client is just the peer, this will be255.255.255.255.PLUTO_MY_PROTOCOLβ lists the protocols allowed over this IPsec SA. all of them, listed out πPLUTO_PEER_PROTOCOLβ lists the protocols the peer allows over this IPsec SA.PLUTO_MY_PORTβ lists the ports allowed over this IPsec SA.PLUTO_PEER_PORTβ lists the ports the peer allows over this IPsec SA.PLUTO_MY_IDβ lists our id. who are we? that's who πPLUTO_PEER_IDβ lists our peer's id.PLUTO_PEER_CAβ lists the peer's CA. certificate authority bestie, keeping it official πPLUTO_DNS_RESOLVERβ the name of the system's DNS resolver (file, or systemd) as configured by theipsec.conf(5)optiondns-resolver=. that's the file-or-systemd situation she's running on β¨
π₯ SEE ALSO π₯
go read those if you want the full lore, no cap π
π HISTORY π
Man page written for the Linux FreeS/WAN project <https://www.freeswan.org/> by Michael Richardson. Original program written by Henry Spencer. the origin story is giving legacy legend energy π
π AUTHOR π
Andrew Cagney, Antony Antony, Daniel Kahn Gillmor, Harald Jenny, Jose Quaresma, Michael Richardson, Paul Wouters, Tuomo Soini. the whole squad, and they all showed up π
and that's the whole page bestie, you're so welcome π«Ά this was Libreswan 5.4.1, dated 10/23/2026 β so go forth and route responsibly, mwah π
β¨
π¦ where this page comes from
- fedora 43: libreswan 5.4.1-1.fc43 Β· GPL-2.0-or-later AND MPL-2.0
- fedora 44: libreswan 5.4.1-1.fc44 Β· GPL-2.0-or-later AND MPL-2.0
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash on : a language model's rewrite of the original, under its terms