Subject: gif tunnel problem - packets not being delivered
To: None <tech-net@netbsd.org>
From: Andrew White <Andrew.E.White@motorola.com>
List: tech-net
Date: 03/04/2003 14:42:16
I'm playing with a couple of boxes and doing gif tunneling...
+-----+
A     B --- C
For arguments sake, assume the following:
A:
   ex0 10.1.2.3
   lo0 172.16.3.1
B:
   ex0 10.1.2.4
   lo0 172.16.16.1
   ex1 172.16.17.1
C:
   ex1 172.16.17.200
I set up a gif tunnel between A and B.
A:
   gif0
     tunnel inet 10.1.2.3 -> 10.1.2.4
     inet 172.16.254.2 -> 172.16.254.3 netmask 0xfffffffe
B:
   gif0
     tunnel inet 10.1.2.4 -> 10.1.2.3
     inet 172.16.254.3 -> 172.16.254.2 netmask 0xfffffffe
And the routing tables:
A:
   172.16.16/22 172.16.254.2 gif0
B:
   172.16.3/22 172.16.254.3 gif0
   172.16.16/22 link ex1
C:
   default: 172.16.17.1
          10.1.2/24
    +-------------------+
    3                   4
    A                   B
   gif0: 172.16.254.2  gif0: 172.16.254.3
   lo0: 172.16.3.1     lo0: 172.16.16.1
                       ex0: 172.16.17.1
                        |
                        | 172.16.17/24
                        |
                       200
                        C
 From A, I can ping B on any address on B.  Traceroute on A:gif0 or 
B:gif0 reveals a source of 172.16.254.2
 From B, I can ping A on any address on A.  Traceroute on A:gif0 or 
B:gif0 reveals a source of 172.16.254.3
 From A, I can ping C (172.16.17.200).  Traceroute on A:gif0 or B:gif0 
reveals a source of 172.16.254.2.
 From C, I can ping A on 172.16.254.2.
 From C, I CANNOT ping A on any other address.  Nor can I ping any nodes 
on subnets of A.  The packets are received on A:gif0, but then vanish.
The gif logic appears to be discarding all packets that do not have 
either a source or destination address that matches one (or both) of 
the tunnel internal addresses.
IPSec and IPFilter are disabled.  tunneling and forwarding are enabled 
in sysctl.
Any ideas?
--
Andrew White
Andrew.E.White@motorola.com
+61 2 9666 0702