use socket2::{Domain, Protocol, Socket, Type}; use std::net::Ipv4Addr; fn main() { let res = Socket::new(Domain::IPV4, Type::RAW, Some(Protocol::from(112))); let Ok(sock) = res else { eprintln!("Socket::new(): {}", res.err().unwrap()); std::process::exit(1); }; let res = sock.join_multicast_v4( &Ipv4Addr::new(224, 0, 0, 18), &Ipv4Addr::UNSPECIFIED, ); let Ok(_) = res else { eprintln!("join_multicast_v4(): {}", res.err().unwrap()); std::process::exit(1); }; }