[LARTC] Help!! Cisco --> Linux Tunneling via NOS Encapsulation

Linux Advanced Routing and Traffic Control

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

 



On Tue, 8 Jan 2002, Juda Barnes wrote:

[snip]
> My problem is that my ISP use a   Cisco implemented IP over IP encapsulation called NOS (KA9Q/NOS Compatiable) , also named protocol 94
> 
> i have made some debugs and with the tunnel i have set up below  my computer (192.168.1.2) able to ping to the Cisco Machine
> But when the cisco send reply , my   machine send to the router     protocol unreachable
> 
> that means my linux box dont recognize the NOS protocol   , i have pass allmost the whole linux how to documents

I've searched the net for a little while and to me it seems like NOS is
a normal ipip tunnel but using ipprotocol 94 instead of 4

from linux/include/linux/in.h:

  IPPROTO_IPIP = 4,             /* IPIP tunnels (older KA9Q tunnels use 94) */

and IPPROTO_IPIP is used in ipip.c which is the IP-in-IP driver in linux.

So you machine sends out tunnelpackets it sends them out with ip protocol
4 which the cisco seem to accept but the cisco sends packets back to you
with ip protocol 94. I assume they have a generic ipip driver in Cisco's
IOS that listens for both ip protocol 4 and 94 and uses one of those
protocols depending on the configuration.

So if you change the value of IPPROTO_IPIP to 94 and recompile your kernel
it should work. But after this small change your machine won't be able to
set up tunnels to other Linux's which use protocol 4... but maybe you can
live with that. It's of course possible to fix it so that linux can use
both but that needs some hacking, something you can start looking at if
you're interested in kernelhacking.

Hope this helps.

/Martin

Never argue with an idiot. They drag you down to their level, then beat you with experience.




[Index of Archives]     [LARTC Home Page]     [Netfilter]     [Netfilter Development]     [Network Development]     [Bugtraq]     [GCC Help]     [Yosemite News]     [Linux Kernel]     [Fedora Users]
  Powered by Linux