On 03/28/2013 03:22 PM, Laine Stump wrote:
On 03/27/2013 04:00 PM, Gene Czarcinski wrote:
> If an IPv4 address is *not* specified, then the IPv4 network is
> isolated and, by default, internal (internal to the specific
> interface) IPv4 routing is enabled..
Define "enable IPv4 routing"
ipv4 forwarding is not explicitly enabled in this case, but guests
connected to the bridge can talk to each other.
> If an IPv6 address is *not* specified, then the IPv6 network is
> isolated and, by default, internal IPv6 routing is disabled but can be
> enabled if ipv6='yes' is specified on <network>.
Correct (but you knew this better than me :-)
> If an IPv6 address is specified, then it is routed.
Define "routed". If there is no <forward> element, then rules are added
to reject any traffic that tries to be forwarded beyond the bridge, or
forwarded into the bridge from outside. However, IPv6 traffic between
interfaces directly connected to the bridge (i.e. the guests) and the
bridge itself is allowed.
> If an IPv4 address is specified, then it can be
> Network-Address-Translated or routed. Not having a <forward>
> explicitly specified does not mean that a route is not established.
Do you mean the direct route for the bridge's own subnet? If there is no
<forward>, then the rules added by networkAddGeneralIptablesRules will
be in effect - aside from allowing receive of dhcp, dns, and possibly
tftp to the host from guests (and ignoring inter-guest traffic), these
rules will reject attempts to forward into or out of the bridge.
>
> Do I understand thing correctly?
>
Not sure. Did what I said match up with what you understand? :-)
OK, I was working on the virtual network support in virt-manager when I
realized that I was not sure I understood what the forwarding/routing
rules were. I needed this so I could accurately display just what IPv4
and IPv6 routing was enabled on a network (interface). Based on more
thinking and what you said above, let me try again.
Isolated-1: *no* address specified
IPv4 - internal routing between guests is enabled.
IPv6 - internal routing between guests is enabled only if
ipv6='yes' is specified
Isolated-2: address specified but no <forward>
IPv4 - internal routing between guests and between guests and
virtualization host
IPv6 - internal routing between guests and between guests and
virtualization host
Also - dnsmasq used for DNS service for each address specified
Opt - dhcp for either or both addresses
Routed-1 - address specified, <forward> with NAT
IPv4 - forwarded with Network Address Translation
IPv6 - forward-routed with no restrictions
Also - dnsmasq used for DNS service for each address specified
Opt - dhcp for either or both addresses
Routed-2 - address specified, <forward> with route specified
IPv4 - forward-routed with no restrictions
IPv6 - forward-routed with no restrictions
Also - dnsmasq used for DNS service for each address specified
Opt - dhcp for either or both addresses
So, if IPv6 is to be forwarded then there must be a <forward> in the
definition.
It also appears that there is no way to specify forwarding for only IPv4
or IPv6 is each has an address specified.
Gene