[MacPorts] #72548: inetutils @2.6: (g)ifconfig command is broken and should probably be disabled
MacPorts
noreply at macports.org
Thu May 29 15:43:50 UTC 2025
#72548: inetutils @2.6: (g)ifconfig command is broken and should probably be
disabled
------------------------+-------------------------
Reporter: jleroy | Owner: Schamschula
Type: defect | Status: assigned
Priority: Normal | Milestone:
Component: ports | Version: 2.10.7
Resolution: | Keywords:
Port: inetutils |
------------------------+-------------------------
Description changed by jleroy:
Old description:
> The ifconfig command provided by inetutils port simply doesn’t work (at
> least on macOS Sequoia): no IPv6 support and a lot of other missing
> information.
>
> {{{
> $ which -a ifconfig
> /opt/local/libexec/gnubin/ifconfig
> /sbin/ifconfig
> }}}
>
> GNU inetutils’ ifconfig output:
> {{{
> $ /opt/local/libexec/gnubin/ifconfig
> anpi0 (4):
> flags UP BROADCAST NOTRAILERS RUNNING SIMPLEX MULTICAST
> mtu 1500
>
> anpi1 (6):
> flags UP BROADCAST NOTRAILERS RUNNING SIMPLEX MULTICAST
> mtu 1500
>
> anpi2 (5):
> flags UP BROADCAST NOTRAILERS RUNNING SIMPLEX MULTICAST
> mtu 1500
>
> ap1 (13):
> flags UP BROADCAST NOTRAILERS RUNNING SIMPLEX MULTICAST
> mtu 1500
>
> awdl0 (16):
> flags UP BROADCAST NOTRAILERS RUNNING SIMPLEX MULTICAST
> mtu 1500
>
> bridge0 (15):
> flags UP BROADCAST NOTRAILERS RUNNING SIMPLEX MULTICAST
> mtu 1500
>
> en0 (14):
> inet address 192.168.0.105
> netmask 255.255.255.0
> broadcast 192.168.0.255
> flags UP BROADCAST NOTRAILERS RUNNING SIMPLEX MULTICAST
> mtu 1500
>
> en1 (10):
> flags UP BROADCAST NOTRAILERS RUNNING PROMISC SIMPLEX MULTICAST
> mtu 1500
>
> en2 (11):
> flags UP BROADCAST NOTRAILERS RUNNING PROMISC SIMPLEX MULTICAST
> mtu 1500
>
> en3 (12):
> flags UP BROADCAST NOTRAILERS RUNNING PROMISC SIMPLEX MULTICAST
> mtu 1500
>
> en4 (7):
> flags UP BROADCAST NOTRAILERS RUNNING SIMPLEX MULTICAST
> mtu 1500
>
> en5 (8):
> flags UP BROADCAST NOTRAILERS RUNNING SIMPLEX MULTICAST
> mtu 1500
>
> en7 (9):
> flags UP BROADCAST NOTRAILERS RUNNING SIMPLEX MULTICAST
> mtu 1500
>
> llw0 (17):
> flags UP BROADCAST NOTRAILERS RUNNING SIMPLEX MULTICAST
> mtu 1500
>
> lo0 (1):
> inet address 127.0.0.1
> netmask 255.0.0.0
> flags UP LOOPBACK RUNNING MULTICAST
> mtu 16384
>
> utun0 (18):
> flags UP POINTOPOINT RUNNING MULTICAST
> mtu 1500
>
> utun1 (19):
> flags UP POINTOPOINT RUNNING MULTICAST
> mtu 1380
>
> utun2 (20):
> flags UP POINTOPOINT RUNNING MULTICAST
> mtu 2000
>
> utun3 (21):
> flags UP POINTOPOINT RUNNING MULTICAST
> mtu 1000
>
> utun4 (22):
> flags UP POINTOPOINT RUNNING MULTICAST
> mtu 1380
>
> utun5 (23):
> flags UP POINTOPOINT RUNNING MULTICAST
> mtu 1380
>
> }}}
>
> Built-in macOS ifconfig ouput:
> {{{
> $ /sbin/ifconfig
> lo0: flags=8049<UP,LOOPBACK,RUNNING,MULTICAST> mtu 16384
> options=1203<RXCSUM,TXCSUM,TXSTATUS,SW_TIMESTAMP>
> inet 127.0.0.1 netmask 0xff000000
> inet6 ::1 prefixlen 128
> inet6 fe80::1%lo0 prefixlen 64 scopeid 0x1
> nd6 options=201<PERFORMNUD,DAD>
> gif0: flags=8010<POINTOPOINT,MULTICAST> mtu 1280
> stf0: flags=0<> mtu 1280
> anpi0: flags=8863<UP,BROADCAST,SMART,RUNNING,SIMPLEX,MULTICAST> mtu 1500
> options=400<CHANNEL_IO>
> ether be:d6:80:6f:01:75
> media: none
> status: inactive
> anpi2: flags=8863<UP,BROADCAST,SMART,RUNNING,SIMPLEX,MULTICAST> mtu 1500
> options=400<CHANNEL_IO>
> ether be:d6:80:6f:01:77
> media: none
> status: inactive
> anpi1: flags=8863<UP,BROADCAST,SMART,RUNNING,SIMPLEX,MULTICAST> mtu 1500
> options=400<CHANNEL_IO>
> ether be:d6:80:6f:01:76
> media: none
> status: inactive
> en4: flags=8863<UP,BROADCAST,SMART,RUNNING,SIMPLEX,MULTICAST> mtu 1500
> options=400<CHANNEL_IO>
> ether be:d6:80:6f:01:55
> nd6 options=201<PERFORMNUD,DAD>
> media: none
> status: inactive
> en5: flags=8863<UP,BROADCAST,SMART,RUNNING,SIMPLEX,MULTICAST> mtu 1500
> options=400<CHANNEL_IO>
> ether be:d6:80:6f:01:56
> nd6 options=201<PERFORMNUD,DAD>
> media: none
> status: inactive
> en7: flags=8863<UP,BROADCAST,SMART,RUNNING,SIMPLEX,MULTICAST> mtu 1500
> options=400<CHANNEL_IO>
> ether be:d6:80:6f:01:57
> nd6 options=201<PERFORMNUD,DAD>
> media: none
> status: inactive
> en1: flags=8963<UP,BROADCAST,SMART,RUNNING,PROMISC,SIMPLEX,MULTICAST> mtu
> 1500
> options=460<TSO4,TSO6,CHANNEL_IO>
> ether 36:64:f9:1c:24:00
> media: autoselect <full-duplex>
> status: inactive
> en2: flags=8963<UP,BROADCAST,SMART,RUNNING,PROMISC,SIMPLEX,MULTICAST> mtu
> 1500
> options=460<TSO4,TSO6,CHANNEL_IO>
> ether 36:64:f9:1c:24:04
> media: autoselect <full-duplex>
> status: inactive
> en3: flags=8963<UP,BROADCAST,SMART,RUNNING,PROMISC,SIMPLEX,MULTICAST> mtu
> 1500
> options=460<TSO4,TSO6,CHANNEL_IO>
> ether 36:64:f9:1c:24:08
> media: autoselect <full-duplex>
> status: inactive
> bridge0: flags=8863<UP,BROADCAST,SMART,RUNNING,SIMPLEX,MULTICAST> mtu
> 1500
> options=63<RXCSUM,TXCSUM,TSO4,TSO6>
> ether 36:64:f9:1c:24:00
> Configuration:
> id 0:0:0:0:0:0 priority 0 hellotime 0 fwddelay 0
> maxage 0 holdcnt 0 proto stp maxaddr 100 timeout 1200
> root id 0:0:0:0:0:0 priority 0 ifcost 0 port 0
> ipfilter disabled flags 0x0
> member: en1 flags=3<LEARNING,DISCOVER>
> ifmaxaddr 0 port 10 priority 0 path cost 0
> member: en2 flags=3<LEARNING,DISCOVER>
> ifmaxaddr 0 port 11 priority 0 path cost 0
> member: en3 flags=3<LEARNING,DISCOVER>
> ifmaxaddr 0 port 12 priority 0 path cost 0
> nd6 options=201<PERFORMNUD,DAD>
> media: <unknown type>
> status: inactive
> ap1: flags=8863<UP,BROADCAST,SMART,RUNNING,SIMPLEX,MULTICAST> mtu 1500
> options=6460<TSO4,TSO6,CHANNEL_IO,PARTIAL_CSUM,ZEROINVERT_CSUM>
> ether 02:02:e0:01:02:b6
> nd6 options=201<PERFORMNUD,DAD>
> media: autoselect (none)
> status: inactive
> en0: flags=8863<UP,BROADCAST,SMART,RUNNING,SIMPLEX,MULTICAST> mtu 1500
> options=6460<TSO4,TSO6,CHANNEL_IO,PARTIAL_CSUM,ZEROINVERT_CSUM>
> ether ca:da:8b:eb:a0:a4
> inet6 fe80::1028:e9b:79e0:f4fb%en0 prefixlen 64 secured scopeid
> 0xe
> inet6 2a01:e0a:XXXX:XXXX:428:beb6:18d4:21f prefixlen 64 autoconf
> secured
> inet6 2a01:e0a:XXXX:XXXX:d45d:6c90:ead9:5605 prefixlen 64
> deprecated autoconf temporary
> inet 192.168.0.105 netmask 0xffffff00 broadcast 192.168.0.255
> inet6 2a01:e0a:XXXX:XXXX:9c68:8768:7d68:e347 prefixlen 64
> deprecated autoconf temporary
> inet6 2a01:e0a:XXXX:XXXX:3db1:bdc0:58d:f50e prefixlen 64 autoconf
> temporary
> nd6 options=201<PERFORMNUD,DAD>
> media: autoselect
> status: active
> awdl0: flags=8863<UP,BROADCAST,SMART,RUNNING,SIMPLEX,MULTICAST> mtu 1500
> options=6460<TSO4,TSO6,CHANNEL_IO,PARTIAL_CSUM,ZEROINVERT_CSUM>
> ether 96:bd:8c:4b:53:6c
> inet6 fe80::94bd:8cff:fe4b:536c%awdl0 prefixlen 64 scopeid 0x10
> nd6 options=201<PERFORMNUD,DAD>
> media: autoselect
> status: active
> llw0: flags=8863<UP,BROADCAST,SMART,RUNNING,SIMPLEX,MULTICAST> mtu 1500
> options=400<CHANNEL_IO>
> ether 96:bd:8c:4b:53:6c
> inet6 fe80::94bd:8cff:fe4b:536c%llw0 prefixlen 64 scopeid 0x11
> nd6 options=201<PERFORMNUD,DAD>
> media: autoselect (none)
> utun0: flags=8051<UP,POINTOPOINT,RUNNING,MULTICAST> mtu 1500
> inet6 fe80::6da4:5335:1f8:f277%utun0 prefixlen 64 scopeid 0x12
> nd6 options=201<PERFORMNUD,DAD>
> utun1: flags=8051<UP,POINTOPOINT,RUNNING,MULTICAST> mtu 1380
> inet6 fe80::1c48:6ddc:754a:ea28%utun1 prefixlen 64 scopeid 0x13
> nd6 options=201<PERFORMNUD,DAD>
> utun2: flags=8051<UP,POINTOPOINT,RUNNING,MULTICAST> mtu 2000
> inet6 fe80::fac4:ea3f:9291:1653%utun2 prefixlen 64 scopeid 0x14
> nd6 options=201<PERFORMNUD,DAD>
> utun3: flags=8051<UP,POINTOPOINT,RUNNING,MULTICAST> mtu 1000
> inet6 fe80::ce81:b1c:bd2c:69e%utun3 prefixlen 64 scopeid 0x15
> nd6 options=201<PERFORMNUD,DAD>
> utun4: flags=8051<UP,POINTOPOINT,RUNNING,MULTICAST> mtu 1380
> inet6 fe80::6b3:5f0f:da76:60b9%utun4 prefixlen 64 scopeid 0x16
> nd6 options=201<PERFORMNUD,DAD>
> utun5: flags=8051<UP,POINTOPOINT,RUNNING,MULTICAST> mtu 1380
> inet6 fe80::5b7e:8191:2778:168b%utun5 prefixlen 64 scopeid 0x17
> nd6 options=201<PERFORMNUD,DAD>
>
> }}}
>
> As this is a low-level macOS command, GNU’s version will probably never
> work correctly on macOS anymore and may potentially harm any user who
> added `/opt/local/libexec/gnubin` to its shell path.
>
> Same thing applies to GNU’s `hostname` command which convert the hostname
> to lowercase which can potentially breaks things:
>
> {{{
> $ which hostname
> /opt/local/libexec/gnubin/hostname
> /bin/hostname
>
> $ /opt/local/libexec/gnubin/hostname -f
> macbook-pro-de-jonathan.local
>
> $ /bin/hostname -f
> MacBook-Pro-de-Jonathan.local
> }}}
>
> IMHO both commands should be disabled.
New description:
The ifconfig command provided by inetutils port simply doesn’t work (at
least on macOS Sequoia): no IPv6 support and a lot of other missing
information.
{{{
$ which -a ifconfig
/opt/local/libexec/gnubin/ifconfig
/sbin/ifconfig
}}}
GNU inetutils’ ifconfig output:
{{{
$ /opt/local/libexec/gnubin/ifconfig
anpi0 (4):
flags UP BROADCAST NOTRAILERS RUNNING SIMPLEX MULTICAST
mtu 1500
anpi1 (6):
flags UP BROADCAST NOTRAILERS RUNNING SIMPLEX MULTICAST
mtu 1500
anpi2 (5):
flags UP BROADCAST NOTRAILERS RUNNING SIMPLEX MULTICAST
mtu 1500
ap1 (13):
flags UP BROADCAST NOTRAILERS RUNNING SIMPLEX MULTICAST
mtu 1500
awdl0 (16):
flags UP BROADCAST NOTRAILERS RUNNING SIMPLEX MULTICAST
mtu 1500
bridge0 (15):
flags UP BROADCAST NOTRAILERS RUNNING SIMPLEX MULTICAST
mtu 1500
en0 (14):
inet address 192.168.0.105
netmask 255.255.255.0
broadcast 192.168.0.255
flags UP BROADCAST NOTRAILERS RUNNING SIMPLEX MULTICAST
mtu 1500
en1 (10):
flags UP BROADCAST NOTRAILERS RUNNING PROMISC SIMPLEX MULTICAST
mtu 1500
en2 (11):
flags UP BROADCAST NOTRAILERS RUNNING PROMISC SIMPLEX MULTICAST
mtu 1500
en3 (12):
flags UP BROADCAST NOTRAILERS RUNNING PROMISC SIMPLEX MULTICAST
mtu 1500
en4 (7):
flags UP BROADCAST NOTRAILERS RUNNING SIMPLEX MULTICAST
mtu 1500
en5 (8):
flags UP BROADCAST NOTRAILERS RUNNING SIMPLEX MULTICAST
mtu 1500
en7 (9):
flags UP BROADCAST NOTRAILERS RUNNING SIMPLEX MULTICAST
mtu 1500
llw0 (17):
flags UP BROADCAST NOTRAILERS RUNNING SIMPLEX MULTICAST
mtu 1500
lo0 (1):
inet address 127.0.0.1
netmask 255.0.0.0
flags UP LOOPBACK RUNNING MULTICAST
mtu 16384
utun0 (18):
flags UP POINTOPOINT RUNNING MULTICAST
mtu 1500
utun1 (19):
flags UP POINTOPOINT RUNNING MULTICAST
mtu 1380
utun2 (20):
flags UP POINTOPOINT RUNNING MULTICAST
mtu 2000
utun3 (21):
flags UP POINTOPOINT RUNNING MULTICAST
mtu 1000
utun4 (22):
flags UP POINTOPOINT RUNNING MULTICAST
mtu 1380
utun5 (23):
flags UP POINTOPOINT RUNNING MULTICAST
mtu 1380
}}}
Built-in macOS ifconfig ouput:
{{{
$ /sbin/ifconfig
lo0: flags=8049<UP,LOOPBACK,RUNNING,MULTICAST> mtu 16384
options=1203<RXCSUM,TXCSUM,TXSTATUS,SW_TIMESTAMP>
inet 127.0.0.1 netmask 0xff000000
inet6 ::1 prefixlen 128
inet6 fe80::1%lo0 prefixlen 64 scopeid 0x1
nd6 options=201<PERFORMNUD,DAD>
gif0: flags=8010<POINTOPOINT,MULTICAST> mtu 1280
stf0: flags=0<> mtu 1280
anpi0: flags=8863<UP,BROADCAST,SMART,RUNNING,SIMPLEX,MULTICAST> mtu 1500
options=400<CHANNEL_IO>
ether be:d6:80:6f:01:75
media: none
status: inactive
anpi2: flags=8863<UP,BROADCAST,SMART,RUNNING,SIMPLEX,MULTICAST> mtu 1500
options=400<CHANNEL_IO>
ether be:d6:80:6f:01:77
media: none
status: inactive
anpi1: flags=8863<UP,BROADCAST,SMART,RUNNING,SIMPLEX,MULTICAST> mtu 1500
options=400<CHANNEL_IO>
ether be:d6:80:6f:01:76
media: none
status: inactive
en4: flags=8863<UP,BROADCAST,SMART,RUNNING,SIMPLEX,MULTICAST> mtu 1500
options=400<CHANNEL_IO>
ether be:d6:80:6f:01:55
nd6 options=201<PERFORMNUD,DAD>
media: none
status: inactive
en5: flags=8863<UP,BROADCAST,SMART,RUNNING,SIMPLEX,MULTICAST> mtu 1500
options=400<CHANNEL_IO>
ether be:d6:80:6f:01:56
nd6 options=201<PERFORMNUD,DAD>
media: none
status: inactive
en7: flags=8863<UP,BROADCAST,SMART,RUNNING,SIMPLEX,MULTICAST> mtu 1500
options=400<CHANNEL_IO>
ether be:d6:80:6f:01:57
nd6 options=201<PERFORMNUD,DAD>
media: none
status: inactive
en1: flags=8963<UP,BROADCAST,SMART,RUNNING,PROMISC,SIMPLEX,MULTICAST> mtu
1500
options=460<TSO4,TSO6,CHANNEL_IO>
ether 36:64:f9:1c:24:00
media: autoselect <full-duplex>
status: inactive
en2: flags=8963<UP,BROADCAST,SMART,RUNNING,PROMISC,SIMPLEX,MULTICAST> mtu
1500
options=460<TSO4,TSO6,CHANNEL_IO>
ether 36:64:f9:1c:24:04
media: autoselect <full-duplex>
status: inactive
en3: flags=8963<UP,BROADCAST,SMART,RUNNING,PROMISC,SIMPLEX,MULTICAST> mtu
1500
options=460<TSO4,TSO6,CHANNEL_IO>
ether 36:64:f9:1c:24:08
media: autoselect <full-duplex>
status: inactive
bridge0: flags=8863<UP,BROADCAST,SMART,RUNNING,SIMPLEX,MULTICAST> mtu 1500
options=63<RXCSUM,TXCSUM,TSO4,TSO6>
ether 36:64:f9:1c:24:00
Configuration:
id 0:0:0:0:0:0 priority 0 hellotime 0 fwddelay 0
maxage 0 holdcnt 0 proto stp maxaddr 100 timeout 1200
root id 0:0:0:0:0:0 priority 0 ifcost 0 port 0
ipfilter disabled flags 0x0
member: en1 flags=3<LEARNING,DISCOVER>
ifmaxaddr 0 port 10 priority 0 path cost 0
member: en2 flags=3<LEARNING,DISCOVER>
ifmaxaddr 0 port 11 priority 0 path cost 0
member: en3 flags=3<LEARNING,DISCOVER>
ifmaxaddr 0 port 12 priority 0 path cost 0
nd6 options=201<PERFORMNUD,DAD>
media: <unknown type>
status: inactive
ap1: flags=8863<UP,BROADCAST,SMART,RUNNING,SIMPLEX,MULTICAST> mtu 1500
options=6460<TSO4,TSO6,CHANNEL_IO,PARTIAL_CSUM,ZEROINVERT_CSUM>
ether 02:02:e0:01:02:b6
nd6 options=201<PERFORMNUD,DAD>
media: autoselect (none)
status: inactive
en0: flags=8863<UP,BROADCAST,SMART,RUNNING,SIMPLEX,MULTICAST> mtu 1500
options=6460<TSO4,TSO6,CHANNEL_IO,PARTIAL_CSUM,ZEROINVERT_CSUM>
ether ca:da:8b:eb:a0:a4
inet6 fe80::1028:e9b:79e0:f4fb%en0 prefixlen 64 secured scopeid
0xe
inet6 2a01:e0a:XXXX:XXXX:428:beb6:18d4:21f prefixlen 64 autoconf
secured
inet6 2a01:e0a:XXXX:XXXX:d45d:6c90:ead9:5605 prefixlen 64
deprecated autoconf temporary
inet 192.168.0.105 netmask 0xffffff00 broadcast 192.168.0.255
inet6 2a01:e0a:XXXX:XXXX:9c68:8768:7d68:e347 prefixlen 64
deprecated autoconf temporary
inet6 2a01:e0a:XXXX:XXXX:3db1:bdc0:58d:f50e prefixlen 64 autoconf
temporary
nd6 options=201<PERFORMNUD,DAD>
media: autoselect
status: active
awdl0: flags=8863<UP,BROADCAST,SMART,RUNNING,SIMPLEX,MULTICAST> mtu 1500
options=6460<TSO4,TSO6,CHANNEL_IO,PARTIAL_CSUM,ZEROINVERT_CSUM>
ether 96:bd:8c:4b:53:6c
inet6 fe80::94bd:8cff:fe4b:536c%awdl0 prefixlen 64 scopeid 0x10
nd6 options=201<PERFORMNUD,DAD>
media: autoselect
status: active
llw0: flags=8863<UP,BROADCAST,SMART,RUNNING,SIMPLEX,MULTICAST> mtu 1500
options=400<CHANNEL_IO>
ether 96:bd:8c:4b:53:6c
inet6 fe80::94bd:8cff:fe4b:536c%llw0 prefixlen 64 scopeid 0x11
nd6 options=201<PERFORMNUD,DAD>
media: autoselect (none)
utun0: flags=8051<UP,POINTOPOINT,RUNNING,MULTICAST> mtu 1500
inet6 fe80::6da4:5335:1f8:f277%utun0 prefixlen 64 scopeid 0x12
nd6 options=201<PERFORMNUD,DAD>
utun1: flags=8051<UP,POINTOPOINT,RUNNING,MULTICAST> mtu 1380
inet6 fe80::1c48:6ddc:754a:ea28%utun1 prefixlen 64 scopeid 0x13
nd6 options=201<PERFORMNUD,DAD>
utun2: flags=8051<UP,POINTOPOINT,RUNNING,MULTICAST> mtu 2000
inet6 fe80::fac4:ea3f:9291:1653%utun2 prefixlen 64 scopeid 0x14
nd6 options=201<PERFORMNUD,DAD>
utun3: flags=8051<UP,POINTOPOINT,RUNNING,MULTICAST> mtu 1000
inet6 fe80::ce81:b1c:bd2c:69e%utun3 prefixlen 64 scopeid 0x15
nd6 options=201<PERFORMNUD,DAD>
utun4: flags=8051<UP,POINTOPOINT,RUNNING,MULTICAST> mtu 1380
inet6 fe80::6b3:5f0f:da76:60b9%utun4 prefixlen 64 scopeid 0x16
nd6 options=201<PERFORMNUD,DAD>
utun5: flags=8051<UP,POINTOPOINT,RUNNING,MULTICAST> mtu 1380
inet6 fe80::5b7e:8191:2778:168b%utun5 prefixlen 64 scopeid 0x17
nd6 options=201<PERFORMNUD,DAD>
}}}
As this is a low-level macOS command, GNU’s version will probably never
work correctly on macOS anymore and may potentially harm any user who
added `/opt/local/libexec/gnubin` to its shell path.
Same thing applies to GNU’s `hostname` command which convert the hostname
to lowercase, which can potentially breaks things:
{{{
$ which hostname
/opt/local/libexec/gnubin/hostname
/bin/hostname
$ /opt/local/libexec/gnubin/hostname -f
macbook-pro-de-jonathan.local
$ /bin/hostname -f
MacBook-Pro-de-Jonathan.local
}}}
IMHO both commands should be disabled.
--
--
Ticket URL: <https://trac.macports.org/ticket/72548#comment:1>
MacPorts <https://www.macports.org/>
Ports system for macOS
More information about the macports-tickets
mailing list