Open gabrik opened 6 years ago
Dear @gabrik, thanks for your report. The "group"
argument of dhcp_ipv4_stack
is just a name (used for command-line / boot arguments), and has no relation with multicast.
The mirage-tcpip stack does not have appropriate multicast support. From the Static_ipv4 module on the receiving side:
let of_interest ip =
Ipaddr.V4.(compare ip (Prefix.address t.cidr) = 0
|| compare ip broadcast = 0
|| compare ip (Prefix.broadcast t.cidr) = 0)
in
if not (of_interest packet.dst) then begin
Log.debug (fun m -> m "dropping IP fragment not for us or broadcast %a"
Ipv4_packet.pp packet);
Lwt.return_unit
This means that all packets which are not broadcast or unicast to the configured IP address are dropped.
If you're interested in implementing multicast into tcpip, please let us know and we can help where which changes would be necessary.
Hi all, I'm not sure this is an issue. There is the possibility to listen on some multicast address when using mirage-tcpip inside an unikernel? I see some ~group parameter in
dhcp_ipv4_stack
but I'm not sure is used for multicast groups. I'm trying to modify the simple TCP example to be able to listen also to UDP multicast.config.ml:
unikernel.ml:
These is a way to do that? I need a new
direct stack
with UDP?