Closed torimus closed 2 months ago
Thanks for a detailed report.
In case of resolv.conf
, which information does the zone id convey? We of course can simply ignore it, but if this zone id implies that a nameserver is only specified for that net interface, then we may use that information to not show this nameserver if it doesn't match iface
.
But it may mean something different, I don't know, in which case ignoring it would be fine.
In my example, this is how NetworkManager
declares scope(zone) id by default. Unfortunately the format is not strict to be relied upon - see specification in RFC6874.
It would be ideal, as you suggest, if it could be used to determine name of the network interface for that non-global address, but it does not seem to be the case. I'm all ears if it behaves consistently in practice for different setups.
Hm, okay, I guess a TODO would suffice for now :)
Problem description:
netlink
module fails with "Failed to read nameservers" error when parsing valid IPv6 address (in accordance to RFC6874)Expected behavior:
netlink
would properly parse correct IPv6Steps to reproduce:
nameserver fd78::1%wlp2s0
(part delimited with'%'
character)i3status-rs
withblock = "net"
in config.tomlfull_text
placeholderThis is a known issue in standard Rust library. One solution is to simply discard scope_id part, including
'%'
delimiter.Possible quick fix: