[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: IP_alias under Red Hat



On Thu, Jan 16, 2003 at 04:54:09PM -0000, Moussa Bagayoko wrote:
> Hi Brian
> You didn't understand very much. let me explain the problem with schemes. I
> have the following situations
> 		ppp link			ethernet link
> client------------------dial up-----------------------router------>internet
> 				server				  R
> 
> The dial up server has two IP address
> eth0 216.252.179.180.3 mask 255.255.255.128
> eth0:0 216.252.179.10 mask 255.255.255.128

The first IP address you gave makes no sense - it has 5 dotted parts!
I will guess you meant: 216.252.180.3. If that is right, then:

> The default gw on the dial up server is 216.252.180.1 (the router R that has
> 216.252.179.1 as IP_alias).

Are you saying that the router also has two IP addresses, 216.252.179.1 and
216.252.180.1 (both /25) ? If it's a Cisco, that would be

    int ethernet x
      ip address 216.252.179.1 255.255.255.128
      ip address 216.252.180.1 255.255.255.128 secondary

If that's true, then what we have so far is:

                             216.252.179.10    216.252.179.1 (/25)
       ?              ?      216.252.180.3     216.252.180.1 (/25)
client ----------------dialup-------------------------------R-----
           ppp         server            ethernet


> When client arrive with IP in the same bloc of eth0 e.g 216.252.180.11 there
> is no problem; all is right.

Is the dial-up server using proxy-arp, to make those ethernet IPs available
to the clients?

> So in the case where client has ip in the same bloc of eth0:0 e.g.
> 216.252.179.123  he cannot do anything outiside the dialserver. That's a
> problem.

If you are using proxy-arp (and there's now a long chain of "ifs..." in the
above :-) then it might be that Linux doesn't proxy-arp for alias addresses.

One suggestion would be to get rid of the proxy-arp, at least for one of
your networks (say 216.252.179.0/25). This then becomes a dedicated "dial-up
pool".

You could do so like this:

(1) Remove the 216.252.179 addresses from both the dial-up server and the
router completely

(2) Add a static route on R:

      ip route 216.252.179.0 255.255.255.128 216.252.180.3

Then you have:

       ?              ?      216.252.180.3     216.252.180.1
client ----------------dialup-------------------------------R-----
           ppp         server            ethernet

  ^
  +--- addresses from
       216.252.179.0/25 pool

Whenever a client is given an address from the 216.252.179.x range, there is
no need for it to be an alias on the ethernet at all. Router R knows to
forward any packet with that destination address to the dial-up server; the
dial-up server knows to forward it to the client (it will have a separate
/32 route in its forwarding table for each host)

The above approach assumes you have a single dialup server. If you have more
than one dialup server, you would give each one its own pool, with its own
route on R pointing at the right dialup server.

It doesn't work if you have multiple dialup servers but your clients get
"static IP addresses". But then, nor does proxy-arp (because if you client
dials server A, then redials and gets server B, they will lose connectivity
until the ARP cache on router R expires)

B.

-----
This is the afnog mailing list, managed by Majordomo 1.94.5

To send a message to this list, e-mail afnog at afnog.org
To send a request to majordomo, e-mail majordomo at afnog.org and put
your request in the body of the message (i.e use "help" for help)

This list is maintained by owner-afnog at afnog.org