Пусть имеется 2 машины PC1 (FreeBSD, ip-адрес IP1, интерфейс INT1) и PC2 (Linux, IP2, INT2).
Для построения IP-IP туннеля (на стороне FreeBSD будет адрес TUN1, Linux - TUN2):bsd# nos-tun -t /dev/tun0 -s TUN1 -d TUN2 -p 4 IP2
bsd# ifconfig tun0 mtu 1500
bsd# ifconfig tun0 uplinux# ip tunnel add tun0 mode ipip remote IP1 local IP2 dev INT2
linux# ifconfig tun0 TUN2 pointopoint TUN1
linux# ifconfig tun0 mtu 1500
linux# ifconfig tun0 up
URL:
Обсуждается: http://www.opennet.me/tips/info/661.shtml
Вот здесь можно прочитать обновленный метод поднятия туннеля с пояснениями: http://blog.kovyrin.net/2006/03/17/how-to-create-ip-ip-tunne...
По ссылке пример мне не понравился !!
По ссылке как раз все описано правильно - это gif туннель , то что подымается на линуксе. А nos-tun подымает ipip туннель совместимый с cisco. А линукс такой не поддерживает видимо, либо создается подругому.
уточнение , немного недоглядел, nos-tun c ключиком -p 4 подымает gif, а по умолчанию или с ключем -p 94 это ipip в понятии cisco
#!/bin/sh
#
# FreeBSD 6.2 Release
#
TUNIF=gre0
meLAN=192.168.0.254
remLAN=192.168.1.254
remNET=192.168.1
remMSK=255.255.255.0
meWAN=X.X.X.X
remWAN=Y.Y.Y.Y
case $1 in
start|faststart)
echo "Creating GRE tunnel..."
ifconfig $TUNIF create mtu 1392 || (echo "GRE tunnel not functional or interface $TUNIF already exists. Cannot create interface $TUNIF. Check `basename $0`."; exit 1);
ifconfig $TUNIF $meLAN $remLAN link1
ifconfig $TUNIF tunnel $meWAN $remWAN
route add -net $remNET -netmask $remMSK $remLAN
ifconfig $TUNIF
;;
stop)
echo "Destroying GRE tunnel..."
route delete -net $remNET -netmask $remMSK $remLAN
ifconfig $TUNIF down
ifconfig $TUNIF destroy
echo "Done."
;;
*) echo "Usage: ./`basename $0` (start|stop)" ;;
esac#!/bin/bash
#
# CentOS release 4.2 (Final)
#
TUNIF=gre0
remWAN=X.X.X.X
meWAN=Y.Y.Y.Y
meLAN=192.168.1.254
remGW=192.168.0.254
remLAN=192.168.0.0/24/sbin/modprobe ip_gre || exit 2
/bin/echo Creating GRE tunnel...
/sbin/ip tunnel add $TUNIF mode gre local $meWAN remote $remWAN ttl 255 || (/bin/echo "GRE tunnel not functional. Cannot create interface $TUNIF. Check `basename $0`."; exit 3);
/sbin/ip addr add $meLAN dev $TUNIF
/sbin/ip link set $TUNIF mtu 1392 up
/sbin/ip route add $remLAN dev $TUNIF
/sbin/ifconfig $TUNIF || (echo "GRE tunnel not functional. Check `basename $0`."; exit 4);
Не подскажите как сделать автозагрузку ipip тунеля.