* Benoit Panizzon <[EMAIL PROTECTED]> 2005-04-20 14:36
> eth0: 10.0.0.1 (time.example.com)
> tun-A: 192.168.0.1 (with the 192.168.1.0/24 net attached on the other side)
>
> Now some client from the other side of the tunne sends a ntp request to
> time.example.com (10.0.0.1)
> This arrives via the tunnel to the box and get's answered by ntpd who of
> courses sees that 192.168.0.1 is the right interface to send the reply out.
>
> The client sees the ntp answer comming from 192.168.0.1 which is not where
> the
> request was sent to (10.0.0.1) and discards that reply.
What happens is that when ntpd sends out the reply it looks up the route
for 192.168.0.0/24 and elects the source attribute as its source address.
Obviously you don't want to use 192.168.0.1 to address the host so you
can hide it by setting src = 10.0.0.1 for the tunnel route, e.g.
ip r d 192.168.0.0/24 dev tun-A
ip r a 192.168.0.0/24 dev tun-A src 10.0.0.1
So you should have something like this:
10.0.0.0/24 dev test scope link src 10.0.1.1
9: [EMAIL PROTECTED]: <POINTOPOINT,NOARP,UP> mtu 1476 qdisc noqueue
link/gre 192.168.23.12 peer 192.168.23.1
inet 10.0.0.1/24 scope link test
the address you want to distribute:
inet 10.0.1.1/32 scope global eth0
So when you do a:
tgr:axs ~ echo "abcd" | nc -u 10.0.1.1 echo
abcd
15:43:14.327883 10.0.0.2.32793 > 10.0.1.1.echo: udp 5 (DF)
15:43:14.328196 10.0.1.1.echo > 10.0.0.2.32793: udp 5 (DF)
Proof:
ip r d 10.0.0.0/24 dev test src 10.0.1.1
ip r a 10.0.0.0/24 dev test
tgr:axs ~ echo "abcd" | nc -u 10.0.1.1 echo
15:47:36.367586 10.0.0.2.32794 > 10.0.1.1.echo: udp 5 (DF)
15:47:36.367948 10.0.0.1.echo > 10.0.0.2.32794: udp 5 (DF)
15:47:36.368295 10.0.0.2 > 10.0.0.1: icmp: 10.0.0.2 udp port 32794 unreachable
[tos 0xc0]
-
To unsubscribe from this list: send the line "unsubscribe linux-net" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at http://vger.kernel.org/majordomo-info.html