All tunnels & point-to-point addresses are separated by "->" but inet.
Before : gre0: flags=8051<UP,POINTOPOINT,RUNNING,MULTICAST> mtu 1476 index 6 priority 0 llprio 6 encap: vnetid none txprio payload rxprio packet groups: gre tunnel: inet 192.0.2.1 -> 198.51.100.1 ttl 64 nodf ecn inet 172.16.0.1 --> 172.16.0.2 netmask 0xffff0000 inet6 fe80::c23f:d5ff:fe63:ffe3%gre0 -> prefixlen 64 scopeid 0x6 inet6 2001:db8::1 -> 2001:db8::2 prefixlen 128 After : gre0: flags=8051<UP,POINTOPOINT,RUNNING,MULTICAST> mtu 1476 index 6 priority 0 llprio 6 encap: vnetid none txprio payload rxprio packet groups: gre tunnel: inet 192.0.2.1 -> 198.51.100.1 ttl 64 nodf ecn inet 172.16.0.1 -> 172.16.0.2 netmask 0xffff0000 inet6 fe80::c23f:d5ff:fe63:ffe3%gre0 -> prefixlen 64 scopeid 0x6 inet6 2001:db8::1 -> 2001:db8::2 prefixlen 128 OK ? Denis Index: ifconfig.c =================================================================== RCS file: /cvs/src/sbin/ifconfig/ifconfig.c,v retrieving revision 1.426 diff -u -p -r1.426 ifconfig.c --- ifconfig.c 15 Sep 2020 15:23:11 -0000 1.426 +++ ifconfig.c 17 Sep 2020 14:41:34 -0000 @@ -3552,7 +3552,7 @@ in_status(int force) } (void) strlcpy(ifr.ifr_name, ifname, sizeof(ifr.ifr_name)); sin = (struct sockaddr_in *)&ifr.ifr_dstaddr; - printf(" --> %s", inet_ntoa(sin->sin_addr)); + printf(" -> %s", inet_ntoa(sin->sin_addr)); } printf(" netmask 0x%x", ntohl(netmask.sin_addr.s_addr)); if (flags & IFF_BROADCAST) {