From nobody Mon Jan 15 13:09:33 2024 X-Original-To: freebsd-net@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4TDCD52z9Gz56v2K for ; Mon, 15 Jan 2024 13:09:57 +0000 (UTC) (envelope-from trashcan@ellael.org) Received: from mx1.enfer-du-nord.net (mx1.enfer-du-nord.net [IPv6:2001:41d0:20a:800::464]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 4TDCD36Cspz4WZ3 for ; Mon, 15 Jan 2024 13:09:55 +0000 (UTC) (envelope-from trashcan@ellael.org) Authentication-Results: mx1.freebsd.org; dkim=pass header.d=ellael.org header.s=dkim header.b=bpzttKur; dmarc=pass (policy=quarantine) header.from=ellael.org; spf=pass (mx1.freebsd.org: domain of trashcan@ellael.org designates 2001:41d0:20a:800::464 as permitted sender) smtp.mailfrom=trashcan@ellael.org Received: from smtpclient.apple (p200300fb4F0b1b01B9f92D71Fa95cA53.dip0.t-ipconnect.de [IPv6:2003:fb:4f0b:1b01:b9f9:2d71:fa95:ca53]) (using TLSv1.2 with cipher ECDHE-ECDSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mx1.enfer-du-nord.net (Postfix) with ESMTPSA id 4TDCCt2954zFBk for ; Mon, 15 Jan 2024 14:09:46 +0100 (CET) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=ellael.org; s=dkim; t=1705324186; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=NYeu2OSRaW9d718iQIb17psbBRQCeNX4QPRYO3gmR0s=; b=bpzttKurfvFI3lV5jrFuwf0+hqdz/bQg2NlPYCB5lizX+qxb5V8OdcvJ8lPam1vww56OZY 2KuDRVbrhneKYBsv9YQTDEsCGibqa07nso93TTIFEd/aTjLLK2Zm/XJUU36Q6j7Ebw1k3Q Vznk1VN3ieZScCmx458Y+W6bfp9uTc2G44cXzyILx4wO/VQDtqUrFTU+a0kol5ZXcGMCTI 9L3qkqns4peug7a0Y9/SPkjm8otIiNKW4YZacfDvUou5h98D2WTzyMPjzS2IIXo0z4cPZV v8ipvgOqOlmjMzfrCQCmh1qtf97AaVKiOx1+Kodl9Ad/QZgdSePjXiDvp6UWkA== From: Michael Grimm Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: quoted-printable List-Id: Networking and TCP/IP with FreeBSD List-Archive: https://lists.freebsd.org/archives/freebsd-net List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-freebsd-net@freebsd.org Mime-Version: 1.0 (Mac OS X Mail 16.0 \(3774.300.61.1.2\)) Subject: Howto: ipsec tunnel routing both IPv4 and IPv6? Possible? Message-Id: <33923504-0ECC-46D7-9F6C-91D47CEE4594@ellael.org> Date: Mon, 15 Jan 2024 14:09:33 +0100 To: freebsd-net@freebsd.org X-Mailer: Apple Mail (2.3774.300.61.1.2) X-Spamd-Bar: -- X-Spamd-Result: default: False [-2.40 / 15.00]; NEURAL_HAM_MEDIUM(-1.00)[-1.000]; SUBJECT_ENDS_QUESTION(1.00)[]; NEURAL_HAM_LONG(-1.00)[-1.000]; NEURAL_HAM_SHORT(-1.00)[-1.000]; MV_CASE(0.50)[]; DMARC_POLICY_ALLOW(-0.50)[ellael.org,quarantine]; R_SPF_ALLOW(-0.20)[+ip6:2001:41d0:20a:800::464]; R_DKIM_ALLOW(-0.20)[ellael.org:s=dkim]; MIME_GOOD(-0.10)[text/plain]; ONCE_RECEIVED(0.10)[]; RCVD_VIA_SMTP_AUTH(0.00)[]; RCVD_COUNT_ONE(0.00)[1]; RCPT_COUNT_ONE(0.00)[1]; MIME_TRACE(0.00)[0:+]; ASN(0.00)[asn:16276, ipnet:2001:41d0::/32, country:FR]; RCVD_TLS_ALL(0.00)[]; ARC_NA(0.00)[]; FROM_EQ_ENVFROM(0.00)[]; FROM_HAS_DN(0.00)[]; MID_RHS_MATCH_FROM(0.00)[]; TO_DN_NONE(0.00)[]; PREVIOUSLY_DELIVERED(0.00)[freebsd-net@freebsd.org]; TO_MATCH_ENVRCPT_ALL(0.00)[]; MLMMJ_DEST(0.00)[freebsd-net@freebsd.org]; DKIM_TRACE(0.00)[ellael.org:+] X-Rspamd-Queue-Id: 4TDCD36Cspz4WZ3 Hi, I do use an ipsec tunnel for routing local IPv4 traffic for years now = (/etc/rc.conf): cloned_interfaces=3D"ipsec0" static_routes=3D"tunnel0" create_args_ipsec0=3D"reqid 104" ifconfig_ipsec0=3D"inet 10.2.2.250 10.1.1.254 tunnel 1.2.3.4 = 10.20.30.40" route_tunnel0=3D"10.1.1.0/24 10.1.1.254" ifconfig ipsec0 (erelevant info, only): ipsec0: flags=3D1008051 = metric 0 mtu 1400 tunnel inet 1.2.3.4 --> 10.20.30.40 inet 10.2.2.250 --> 10.1.1.254 netmask 0xffffff00 reqid: 104 pf firewall entries are set to allow esp over that tunnel. Now, I do want to route local IPv6 in addition, *if* that is possible, = at all. According the manual for if_ipsec(0) should that be possible, if I do = understand that combination of "IPv4 and IPv6 traffic" and "over either = IPv4 or IPv6" correctly (I am not a native English speaker): https://man.freebsd.org/cgi/man.cgi?query=3Dif_ipsec(4) It can tunnel IPv4 and IPv6 traffic over either IPv4 or IPv6=20 and secure it with ESP. Sadly, that manual page doesn't provide an IPv6 example ... All of my following attempts failed: 1) adding a second ipsec1 interface connecting the very same IPv4 = endpoints: cloned_interfaces=3D"ipsec0 ipsec1" static_routes=3D"tunnel0 tunnel1" create_args_ipsec1=3D"reqid 106" ifconfig_ipsec1=3D"inet fd00:b:b:b::250 fd00:a:a:a::254 tunnel = 1.2.3.4 10.20.30.40" route_tunnel1=3D"fd00:a:a:a::/64 fd00:a:a:a::254" Error: route: bad address: fd00:a:a:a:: ifconfig ipsec1: ipsec1: flags=3D8010 metric 0 mtu 1400 groups: ipsec reqid: 106 Thus, no tunnel and no routing, set. 2) as in 1), besides: route_tunnel1=3D"fd00:a:a:a:: prefixlen 64 fd00:a:a:a::254" No success, same error regarding route. 3) as in 1), besides: ifconfig_ipsec1=3D"inet fd00:b:b:b::250 fd00:a:a:a::254 tunnel = 1.2.3.4 10.20.30.40" No success, same error regarding route. 4) setting the routing via route command: /sbin/route add -inet6 default -gateway fd00:a:a:a::254 Error: add net default: gateway fd00:a:a:a::254 fib 0: Invalid argument I am running out of ideas, and Google doesn't come up with relevant = answers, at least not for me. Any help, hints, documents are highly appreciated. Thanks and regards, Michael