cloudstack-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "ASF GitHub Bot (JIRA)" <>
Subject [jira] [Commented] (CLOUDSTACK-9050) Virtual Router Static-NAT rules bind to wrong public interface
Date Thu, 12 Nov 2015 14:39:11 GMT


ASF GitHub Bot commented on CLOUDSTACK-9050:

Github user ustcweizhou commented on the pull request:
    the similar issue happened several times in our scripts.
    We should use more precise expression when we use sed/grep, etc

> Virtual Router Static-NAT rules bind to wrong public interface
> --------------------------------------------------------------
>                 Key: CLOUDSTACK-9050
>                 URL:
>             Project: CloudStack
>          Issue Type: Bug
>      Security Level: Public(Anyone can view this level - this is the default.) 
>          Components: ISO, Virtual Router
>    Affects Versions: 4.5.2
>            Reporter: dsclose
> When a virtual router has multiple public NICs (in a scenario where multiple guest subnets
are available) the router is liable to create static-NAT rules for certain IP addresses that
refer to incorrect interfaces.
> Example
> ----------
> A /24 has been divided into a /25 and two /26 ranges. The /25 and one /26 are used for
guest IP addresses. This may lead to the following IP addresses being assigned to a virtual
> eth0:
> eth1:
> eth2: and
> eth3: and
> Scenario:
> The user decides to create two static NATs. One from, the other from, both to hosts on the range.
> Result:
> is successfully configured as a static NAT and works immediately.
All NAT rules in the resulting iptables correctly refer to eth3 as the source or destination
interface. Cloudstack reports that is successfully configured but it does
not work. All NAT rules in the resulting iptables INCORRECTLY refer to eth2 as the source
or destination interface.
> Cause:
> The virtual router greps the output of "ip addr show dev ethN" until it finds the IP
address. However, this command also prints out the broadcast address for the subnet which
may partially include an IP address from a similar range. In the above example,
was INCORRECTLY NAT'd to eth2 because the IP address was matched by the broadcast address
> This is liable to occur on any router with NICs on two similar subnets.

This message was sent by Atlassian JIRA

View raw message