Авраменко Андрей wrote:
Could you please explain me how can I implement broadcast/multicast between guest domains?
For broadcast to work, you need to have all interfaces in the same broadcast domain (i.e. there must be L2 connectivity between the interfaces of the guests). That means that all guest interfaces must be bridged together. This is the default afaik.
For multicast to work, you can choose two options: 1 - have the same condition as for broadcast; 2 - you need to set the TTL of the multicast packets higher than 1 so that you can span a router and the router must be configured to forward multicast.
For a local system, option 1 is by far the easiest to establish.
Авраменко Андрей wrote:
The server hasn't connection to external net. The dom0 has dhcp server running and has static ip: 192.168.168.1. Guest domains get ipaddrs 192.168.168.252 and 192.168.168.251 via dhcp. While I'm pinging "ping -b 192.168.168.255" from any domain - no answer. Firewall is stoped.
Pinging to the broadcast address does not necessarily mean that you get an answer. That is entirely dependent on the setting of /proc/sys/net/ipv4/icmp_echo_ignore_broadcasts (which is default set to 1 nowadays).
If you have a dhcp server running in dom0 and get IP addresses in domU, then you have L2 connectivity from domU to dom0, or you would not be able to run the dhcp server (which is based on reception of broadcast at L2).
Also, both domU guests get an address in the same network (I assume a /24 here), which constitutes the same broadcast domain. That means that there *must* be L2 connectivity between the domUs. This is by definition of how the network is supposed to be set up.