[Bug 245148] ifconfig(8) tunnel destination not respecting CLI specified address_family
bugzilla-noreply at freebsd.org
bugzilla-noreply at freebsd.org
Sat Mar 28 19:16:35 UTC 2020
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=245148
Bug ID: 245148
Summary: ifconfig(8) tunnel destination not respecting CLI
specified address_family
Product: Base System
Version: 12.1-STABLE
Hardware: Any
OS: Any
Status: New
Severity: Affects Some People
Priority: ---
Component: bin
Assignee: bugs at FreeBSD.org
Reporter: junovitch at freebsd.org
The following is observed on pfSense and the root cause appears to be
ifconfig(8) does not make use of the specified "inet" or "inet6" when checking
and setting tunnel remote destinations.
/status_services.php: The command '/sbin/ifconfig 'ipsec1000' inet tunnel
'x.x.x.203' 'distantend.example.com' up' returned exit code '1', the output was
'ifconfig: source and destination address families do not match'
Please see below for a simple point to point/same LAN configuration where this
can be reproduced.
Host 1 configuration: "vm1"
/etc/hosts
10.100.82.107 vm2
x:x:x:x:a00:27ff:fe64:d5bd vm2
Host 2 configuration: "vm2"
/etc/hosts
10.100.82.105 vm1
x:x:x:x:a00:27ff:fec9:1f9e vm1
Host 1 CLI prep:
root at vm1:~ # ifconfig gre0 create
root at vm1:~ # ifconfig gre0 inet 10.0.0.1/30 10.0.0.2
root at vm1:~ # ifconfig gre0 inet tunnel 10.100.82.105 10.100.82.107
Host 2 CLI prep:
root at vm2:~ # ifconfig gre0 create
root at vm2:~ # ifconfig gre0 inet 10.0.0.2/30 10.0.0.1
root at vm2:~ # ifconfig gre0 inet tunnel 10.100.82.107 10.100.82.105
root at vm2:~ # ping -c 1 10.0.0.1
This produces a working configuration. But in an environment with dual stack
as in the case of my pfSense router the hostname fails to properly resolve
respecting the passed 'inet' flag.
Host 2 (unpatched):
root at vm2:~ # ifconfig gre0 inet tunnel 10.100.82.107 vm1
ifconfig: source and destination address families do not match
root at vm2:~ # ifconfig gre0 inet6 tunnel x:x:x:x:a00:27ff:fe64:d5bd vm1
Host 1 (patched to pass getaddrinfo hints):
root at vm1:/usr/src/sbin/ifconfig # ifconfig gre0 inet tunnel 10.100.82.105 vm2
root at vm1:/usr/src/sbin/ifconfig # ifconfig gre0
gre0: flags=8051<UP,POINTOPOINT,RUNNING,MULTICAST> metric 0 mtu 1476
options=80000<LINKSTATE>
tunnel inet 10.100.82.105 --> 10.100.82.107
inet6 fe80::a00:27ff:fec9:1f9e%gre0 prefixlen 64 scopeid 0x3
inet 10.0.0.1 --> 10.0.0.2 netmask 0xfffffffc
groups: gre
nd6 options=21<PERFORMNUD,AUTO_LINKLOCAL>
root at vm1:/usr/src/sbin/ifconfig # ifconfig gre0 inet6 tunnel
x:x:x:x:a00:27ff:fec9:1f9e vm2
root at vm1:/usr/src/sbin/ifconfig # ifconfig gre0
gre0: flags=8051<UP,POINTOPOINT,RUNNING,MULTICAST> metric 0 mtu 1476
options=80000<LINKSTATE>
tunnel inet6 x:x:x:x:a00:27ff:fec9:1f9e --> x:x:x:x:a00:27ff:fe64:d5bd
inet6 fe80::a00:27ff:fec9:1f9e%gre0 prefixlen 64 scopeid 0x3
inet 10.0.0.1 --> 10.0.0.2 netmask 0xfffffffc
groups: gre
nd6 options=21<PERFORMNUD,AUTO_LINKLOCAL>
--
You are receiving this mail because:
You are the assignee for the bug.
More information about the freebsd-bugs
mailing list