I'm not sure if this is a bug or expected, but when running hick in a dual-stack network, I'm seeing that it drops every ipv6 packet it receives as "off-link":
Here's a trace:
[2026-08-11 10:28:20.826] DEBUG hick_reactor::endpoint: bound v4 mDNS socket interface_index=3
[2026-08-11 10:28:20.826] DEBUG hick_reactor::endpoint: joined v4 mDNS multicast group interface_index=3
[2026-08-11 10:28:20.826] DEBUG hick_reactor::endpoint: bound v6 mDNS socket interface_index=3
[2026-08-11 10:28:20.826] DEBUG hick_reactor::endpoint: joined v6 mDNS multicast group interface_index=3
[2026-08-11 10:28:20.828] TRACE driver_task:drain_transmits{credits=64}: hick_reactor::driver: send_to v4 dst=224.0.0.251:5353 len=89
[2026-08-11 10:28:20.828] TRACE driver_task:drain_transmits{credits=64}: hick_reactor::driver: send_to v6 dst=[ff02::fb]:5353 len=89
[2026-08-11 10:28:20.828] TRACE recv_loop: hick_reactor::driver: recv datagram src=10.1.1.104:5353 len=89 via_v4=true
[2026-08-11 10:28:20.828] TRACE driver_task:drain_transmits{credits=64}: hick_reactor::driver: send_to v4 dst=224.0.0.251:5353 len=89
[2026-08-11 10:28:20.828] TRACE driver_task:drain_transmits{credits=64}: hick_reactor::driver: send_to v6 dst=[ff02::fb]:5353 len=89
[2026-08-11 10:28:20.828] TRACE recv_loop: hick_reactor::driver: recv datagram src=[fe80::2df3:8450:dd18:4c53%3]:5353 len=89 via_v4=false
[2026-08-11 10:28:20.828] TRACE recv_loop: hick_reactor::driver: recv datagram src=10.1.1.104:5353 len=89 via_v4=true
[2026-08-11 10:28:20.828] TRACE recv_loop: hick_reactor::driver: recv datagram src=[fe80::2df3:8450:dd18:4c53%3]:5353 len=89 via_v4=false
[2026-08-11 10:28:20.828] DEBUG driver_task: hick_reactor::driver: dropping off-link packet (RFC 6762 §11 trust boundary) src=[fe80::2df3:8450:dd18:4c53%3]:5353 hop_limit=Some(1)
[2026-08-11 10:28:20.828] DEBUG driver_task: hick_reactor::driver: dropping off-link packet (RFC 6762 §11 trust boundary) src=[fe80::2df3:8450:dd18:4c53%3]:5353 hop_limit=Some(1)
[2026-08-11 10:28:20.866] TRACE recv_loop: hick_reactor::driver: recv datagram src=10.1.1.104:5353 len=273 via_v4=true
[2026-08-11 10:28:20.867] TRACE driver_task:drain_transmits{credits=64}: hick_reactor::driver: send_to v4 dst=224.0.0.251:5353 len=76
[2026-08-11 10:28:20.867] TRACE recv_loop: hick_reactor::driver: recv datagram src=[fe80::2df3:8450:dd18:4c53%3]:5353 len=273 via_v4=false
[2026-08-11 10:28:20.867] TRACE driver_task:drain_transmits{credits=64}: hick_reactor::driver: send_to v6 dst=[ff02::fb]:5353 len=76
[2026-08-11 10:28:20.867] TRACE recv_loop: hick_reactor::driver: recv datagram src=[fe80::2df3:8450:dd18:4c53%3]:5353 len=76 via_v4=false
[2026-08-11 10:28:20.867] DEBUG driver_task: hick_reactor::driver: dropping off-link packet (RFC 6762 §11 trust boundary) src=[fe80::2df3:8450:dd18:4c53%3]:5353 hop_limit=Some(1)
[2026-08-11 10:28:20.867] TRACE recv_loop: hick_reactor::driver: recv datagram src=10.1.1.104:5353 len=76 via_v4=true
[2026-08-11 10:28:20.867] DEBUG driver_task: hick_reactor::driver: dropping off-link packet (RFC 6762 §11 trust boundary) src=[fe80::2df3:8450:dd18:4c53%3]:5353 hop_limit=Some(1)
[2026-08-11 10:28:20.867] TRACE driver_task:drain_transmits{credits=64}: hick_reactor::driver: send_to v4 dst=224.0.0.251:5353 len=76
[2026-08-11 10:28:20.868] TRACE driver_task:drain_transmits{credits=64}: hick_reactor::driver: send_to v6 dst=[ff02::fb]:5353 len=76
[2026-08-11 10:28:20.868] TRACE recv_loop: hick_reactor::driver: recv datagram src=10.1.1.104:5353 len=76 via_v4=true
[2026-08-11 10:28:20.868] TRACE recv_loop: hick_reactor::driver: recv datagram src=[fe80::2df3:8450:dd18:4c53%3]:5353 len=76 via_v4=false
[2026-08-11 10:28:20.868] DEBUG driver_task: hick_reactor::driver: dropping off-link packet (RFC 6762 §11 trust boundary) src=[fe80::2df3:8450:dd18:4c53%3]:5353 hop_limit=Some(1)
[2026-08-11 10:28:20.930] TRACE recv_loop: hick_reactor::driver: recv datagram src=10.1.1.104:5353 len=273 via_v4=true
[2026-08-11 10:28:20.931] TRACE recv_loop: hick_reactor::driver: recv datagram src=[fe80::2df3:8450:dd18:4c53%3]:5353 len=273 via_v4=false
[2026-08-11 10:28:20.931] DEBUG driver_task: hick_reactor::driver: dropping off-link packet (RFC 6762 §11 trust boundary) src=[fe80::2df3:8450:dd18:4c53%3]:5353 hop_limit=Some(1)
[2026-08-11 10:28:20.998] TRACE driver_task:drain_transmits{credits=64}: hick_reactor::driver: send_to v4 dst=224.0.0.251:5353 len=234
[2026-08-11 10:28:20.998] TRACE driver_task:drain_transmits{credits=64}: hick_reactor::driver: send_to v6 dst=[ff02::fb]:5353 len=234
[2026-08-11 10:28:20.999] TRACE recv_loop: hick_reactor::driver: recv datagram src=[fe80::2df3:8450:dd18:4c53%3]:5353 len=234 via_v4=false
[2026-08-11 10:28:20.999] TRACE recv_loop: hick_reactor::driver: recv datagram src=10.1.1.104:5353 len=234 via_v4=true
[2026-08-11 10:28:20.999] DEBUG driver_task: hick_reactor::driver: dropping off-link packet (RFC 6762 §11 trust boundary) src=[fe80::2df3:8450:dd18:4c53%3]:5353 hop_limit=Some(1)
Semi-related -- Is there a way to have the traces show me more information about which packets it sent/received? (Was it a query/response for SRV, TXT, PTR? A? etc.) update: Aah, those are traced in mdns_proto. 👍
I'm not sure if this is a bug or expected, but when running hick in a dual-stack network, I'm seeing that it drops every ipv6 packet it receives as "off-link":
Here's a trace:
Semi-related -- Is there a way to have the traces show me more information about which packets it sent/received? (Was it a query/response for SRV, TXT, PTR? A? etc.) update: Aah, those are traced in
mdns_proto. 👍