URL: https://www.opennet.ru/cgi-bin/openforum/vsluhboard.cgi
Форум: vsluhforumID6
Нить номер: 1400
[ Назад ]

Исходное сообщение
"GRE tunnel Cisco - Debian"

Отправлено Ninjatrasher , 02-Июл-14 12:58 
Добрый день. Настраиваю GRE tunnel между CISCO и DEBIAN

Настройки на CISCO:

interface Tunnel1
description **** GRE to Squid server for WCCP ****
ip address 172.18.0.53 255.255.255.252
ip mtu 1276
tunnel source 172.18.1.1
tunnel destination 172.18.1.47


Настройки на DEBIAN:

auto eth0
iface eth0 inet static
address 172.18.1.47
netmask 255.255.255.0
gateway 172.18.1.1
dns-nameservers 172.18.1.10
dns-search domain.com


auto tun1
iface tun1 inet static
address 172.18.0.54
netmask 255.255.255.252
up ifconfig tun1 multicast
pre-up iptunnel add tun1 mode gre local 172.18.1.47 remote 172.18.1.1 ttl 255
pointopoin 172.18.0.53
post-down iptunnel del tun1

Traceroute 172.18.0.53 на Дебиане не отрабатывает. С циски 172.18.0.54 не пингуется.

Подскажите пожалуйста, что делаю не правильно.


Содержание

Сообщения в этом обсуждении
"GRE tunnel Cisco - Debian"
Отправлено Ninjatrasher , 02-Июл-14 13:40 
>[оверквотинг удален]
> auto tun1
> iface tun1 inet static
> address 172.18.0.54
> netmask 255.255.255.252
> up ifconfig tun1 multicast
> pre-up iptunnel add tun1 mode gre local 172.18.1.47 remote 172.18.1.1 ttl 255
> pointopoin 172.18.0.53
> post-down iptunnel del tun1
> Traceroute 172.18.0.53 на Дебиане не отрабатывает. С циски 172.18.0.54 не пингуется.
> Подскажите пожалуйста, что делаю не правильно.

Немного дополнений. eth0 - сетевой интерфейс для squid. Для тунеля нужен отдельный сетевой интерфейс или можно тунель повесить на eth0?


"GRE tunnel Cisco - Debian"
Отправлено Ninjatrasher , 02-Июл-14 17:04 
>[оверквотинг удален]
>> address 172.18.0.54
>> netmask 255.255.255.252
>> up ifconfig tun1 multicast
>> pre-up iptunnel add tun1 mode gre local 172.18.1.47 remote 172.18.1.1 ttl 255
>> pointopoin 172.18.0.53
>> post-down iptunnel del tun1
>> Traceroute 172.18.0.53 на Дебиане не отрабатывает. С циски 172.18.0.54 не пингуется.
>> Подскажите пожалуйста, что делаю не правильно.
> Немного дополнений. eth0 - сетевой интерфейс для squid. Для тунеля нужен отдельный
> сетевой интерфейс или можно тунель повесить на eth0?

понял, что делал полную ахинею, добавил дебиану вторую сетевую карту ( он крутиться на hyper v) подправил конфиг, теперь вот таким образом

auto eth0 eth1

iface eth0 inet static
address 172.18.1.47
netmask 255.255.255.0
gateway 172.18.1.1
dns-nameservers 172.18.1.10
dns-search domain.com

iface eth1 inet static
address 172.18.1.49
netmask 255.255.255.0

auto tun1
iface tun1 inet static
address 172.18.0.54
netmask 255.255.255.252
up ifconfig tun1 multicast
pre-up iptunnel add tun1 mode gre remote 172.18.1.1 local 172.18.1.49  ttl 255
pointopoint 172.18.0.53
post-down iptunnel del tun1

но результат все тот же, не пойму где я ошибаюсь.


"GRE tunnel Cisco - Debian"
Отправлено КуКу , 03-Июл-14 10:33 
Для начала подымается ли туннель?
что пишется в логах?
в фаерволе открыл трафик для gre?
если в первых 3-х ничего криминального нет, то tcpdump и попробуй  посмотреть где и что не так.


"GRE tunnel Cisco - Debian"
Отправлено Ninjatrasher , 03-Июл-14 11:46 
> Для начала подымается ли туннель?
> что пишется в логах?
> в фаерволе открыл трафик для gre?
> если в первых 3-х ничего криминального нет, то tcpdump и попробуй  
> посмотреть где и что не так.

Все валиться на самом вашем первом вопросе. Туннель не поднимается. Как я понимаю, что бы разрешить на циске gre для айпи нужно добавить строчку :

access-list 123 permit gre host xxx.xxx.xxx.xxx host xxx.xxx.xxx.xxx  так? Проблема в том, что я настраиваю только со стороны Debian, со стороны циски занимается другой человек. Не могли бы Вы привести пример конфига циски, где разрешается gre трафик с определенного ip, дабы я мог показать этому человеку, что бы сверить с конфигом нашей циски.
Заранее спасибо


"GRE tunnel Cisco - Debian"
Отправлено КуКу , 03-Июл-14 12:20 
я как раз и имел ввиду что на фаерволе дебиана разрешить трафик по протоколу gre.
попробуйте поднять туннель вручную, и ошибки которые он выдат в консоль(или /var/log/message)  написать сюда.
в паралельном окне можете подампить трафик tcpdump'ом что бы увидеть что там происходит при попытке установления связи.

с циской у меня мало практики, аксеслист который Вы приводите похож на правду.


"GRE tunnel Cisco - Debian"
Отправлено Ninjatrasher , 03-Июл-14 12:38 
> я как раз и имел ввиду что на фаерволе дебиана разрешить трафик
> по протоколу gre.
> попробуйте поднять туннель вручную, и ошибки которые он выдат в консоль(или /var/log/message)
>  написать сюда.
> в паралельном окне можете подампить трафик tcpdump'ом что бы увидеть что там
> происходит при попытке установления связи.
> с циской у меня мало практики, аксеслист который Вы приводите похож на
> правду.

не очень понимаю, как это "поднять вручную"

На Debiane активировал modprobe ip_gre, если делаю ifconfig -a, показывается интерфейс gr0, может быть стоит настраивать его?


"GRE tunnel Cisco - Debian"
Отправлено КуКу , 03-Июл-14 13:16 
вручную, это значит вводить все команды по очереди в консоли:)

iptunnel add tun1 mode gre remote 172.18.1.1 local 172.18.1.49  ttl 255
энтер

ip a a 172.18.0.54/30 dev tun1 (адрес/маска проверьте.)
энтер

ip lin set up dev tun1
энтер

ошибки которые выпадают, постить сюда.
паралельно подампить трафик, может там что то интересное будет

P.S. а зачем для адресации внутри туннеля Вы используете непонятную сеть, которая скорее всего маршрутизируется в инете?

стандартные адресные пространства для локальных сетей, это:
10.0.0.0/8
172.16.0.0/16
192.168.0.0/24


"GRE tunnel Cisco - Debian"
Отправлено Ninjatrasher , 03-Июл-14 13:27 
>[оверквотинг удален]
> ip lin set up dev tun1
> энтер
> ошибки которые выпадают, постить сюда.
> паралельно подампить трафик, может там что то интересное будет
> P.S. а зачем для адресации внутри туннеля Вы используете непонятную сеть, которая
> скорее всего маршрутизируется в инете?
> стандартные адресные пространства для локальных сетей, это:
> 10.0.0.0/8
> 172.16.0.0/16
> 192.168.0.0/24

Все это нужно для того что бы связать циску и сквид, который на дебиане, и весь трафик через GRE туннель пустить на сквид.


Сейчас попробую вручную поднять туннель и напишу вам


"GRE tunnel Cisco - Debian"
Отправлено Ninjatrasher , 03-Июл-14 13:33 
>[оверквотинг удален]
> ip lin set up dev tun1
> энтер
> ошибки которые выпадают, постить сюда.
> паралельно подампить трафик, может там что то интересное будет
> P.S. а зачем для адресации внутри туннеля Вы используете непонятную сеть, которая
> скорее всего маршрутизируется в инете?
> стандартные адресные пространства для локальных сетей, это:
> 10.0.0.0/8
> 172.16.0.0/16
> 192.168.0.0/24

Сейчас пробовал все поднять вручную. При первой попытке, после первой строчке выдал следующие: ioctl no buffer space available
поменял значение tun1 на tun2, все прошло без ошибок.


Но все равно адрес 172.18.0.53 не пингуется. и трассировка не проходит


"GRE tunnel Cisco - Debian"
Отправлено Ninjatrasher , 03-Июл-14 13:38 
>[оверквотинг удален]
> ip lin set up dev tun1
> энтер
> ошибки которые выпадают, постить сюда.
> паралельно подампить трафик, может там что то интересное будет
> P.S. а зачем для адресации внутри туннеля Вы используете непонятную сеть, которая
> скорее всего маршрутизируется в инете?
> стандартные адресные пространства для локальных сетей, это:
> 10.0.0.0/8
> 172.16.0.0/16
> 192.168.0.0/24

вот что показывает ifconfig -a

tun1      Link encap:UNSPEC  HWaddr AC-12-01-2F-00-00-00-00-00-00-00-00-00-00-00-00  
          inet addr:172.18.0.54  P-t-P:172.18.0.53  Mask:255.255.255.255
          UP POINTOPOINT RUNNING NOARP MULTICAST  MTU:1476  Metric:1
          RX packets:0 errors:0 dropped:0 overruns:0 frame:0
          TX packets:136 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:0
          RX bytes:0 (0.0 B)  TX bytes:11424 (11.1 KiB)


не понимаю как изменить маску и мту, в interfaces прописано вот так

auto tun1
iface tun1 inet static
address 172.18.0.54
netmask 255.255.255.252
up ifconfig tun1 multicast
pre-up iptunnel add tun1 mode gre remote 172.18.1.1 local 172.18.1.49  ttl 255
pointopoint 172.18.0.53
post-down iptunnel del tun1


если добавляю mtu то тунель не поднимается, ругается на синтаксис.


"GRE tunnel Cisco - Debian"
Отправлено КуКу , 03-Июл-14 14:03 
У вас сейчас какой поднят tun1 или tun2?
какой мту стоит на поднятом интерфейсе?
попробуйте включить дамп трафика на тунеле, по памяти что то вроде tcpdump -i tun1(2) -nv icmp

и попринговать удаленный хост, посомтрите что падает в дам, есть ли ответы.

при поднятом тунеле попробуйте уменьшать мту на интерфейсе:
ip link set dev tun1(2) mtu 1400 # ну и уменьшайте по 40 до значения которое на циске


"GRE tunnel Cisco - Debian"
Отправлено Ninjatrasher , 03-Июл-14 14:27 
> У вас сейчас какой поднят tun1 или tun2?
> какой мту стоит на поднятом интерфейсе?
> попробуйте включить дамп трафика на тунеле, по памяти что то вроде tcpdump
> -i tun1(2) -nv icmp
> и попринговать удаленный хост, посомтрите что падает в дам, есть ли ответы.
> при поднятом тунеле попробуйте уменьшать мту на интерфейсе:
> ip link set dev tun1(2) mtu 1400 # ну и уменьшайте по
> 40 до значения которое на циске

14:16:42.249393 IP (tos 0x0, ttl 64, id 2137, offset 0, flags [DF], proto ICMP (1), length 84)
    172.18.0.54 > 172.18.0.53: ICMP echo request, id 3807, seq 47, length 64
14:16:43.249643 IP (tos 0x0, ttl 64, id 2138, offset 0, flags [DF], proto ICMP (1), length 84)
    172.18.0.54 > 172.18.0.53: ICMP echo request, id 3807, seq 48, length 64
14:16:44.249900 IP (tos 0x0, ttl 64, id 2139, offset 0, flags [DF], proto ICMP (1), length 84)
    172.18.0.54 > 172.18.0.53: ICMP echo request, id 3807, seq 49, length 64
14:16:45.250154 IP (tos 0x0, ttl 64, id 2140, offset 0, flags [DF], proto ICMP (1), length 84)
    172.18.0.54 > 172.18.0.53: ICMP echo request, id 3807, seq 50, length 64

вот что в дампе


"GRE tunnel Cisco - Debian"
Отправлено КуКу , 03-Июл-14 15:09 
Судя по выводу, то у вас все ок, тунель поднялся и вы пакеты отправляете.. друге дело что вам ответы не приходят.

Еще раз проверьте фаервол на дебиане(может у Вас блокируются входящие icmp запросы) и если все ок, то просите админа циски убрать аксеслисты и попингать по очереди друг друга, все это время смотря в тспдамп


"GRE tunnel Cisco - Debian"
Отправлено Ninjatrasher , 03-Июл-14 15:16 
> Судя по выводу, то у вас все ок, тунель поднялся и вы
> пакеты отправляете.. друге дело что вам ответы не приходят.
> Еще раз проверьте фаервол на дебиане(может у Вас блокируются входящие icmp запросы)
> и если все ок, то просите админа циски убрать аксеслисты и
> попингать по очереди друг друга, все это время смотря в тспдамп

Сейчас все те же действия проделали на Debian 6.0, все заработало. Видимо действительно проблема где то Debian 7.0


"GRE tunnel Cisco - Debian"
Отправлено КуКу , 03-Июл-14 15:41 
сомневаюсь что проблема в версии дебиана, возможно в разных версиях разные настройки по дефолту и из-за этого проблема.

"GRE tunnel Cisco - Debian"
Отправлено Ninjatrasher , 03-Июл-14 16:34 
> сомневаюсь что проблема в версии дебиана, возможно в разных версиях разные настройки
> по дефолту и из-за этого проблема.

разница вот в чем: если сделать команду #lsmod | grep gre
На дебиане 6.0 выводиться

ip_gre                 22164  0


А на дебиане 7.5
ip_gre                 22164  0
gre                    12531  1 ip_gre


"GRE tunnel Cisco - Debian"
Отправлено midori , 03-Июл-14 14:48 
> P.S. а зачем для адресации внутри туннеля Вы используете непонятную сеть, которая
> скорее всего маршрутизируется в инете?

Адреса 172.18.X.Y попадают в приватное адресное пространство согласно RFC1918:

172.16.0.0  -  172.31.255.255  (172.16/12 prefix)


"GRE tunnel Cisco - Debian"
Отправлено КуКу , 03-Июл-14 15:06 
хм... действительно, а я всю жизнь думал что префикс 16.

"GRE tunnel Cisco - Debian"
Отправлено КуКу , 03-Июл-14 12:22 
в догонку.

На циске выставляется ip mtu 1276.
попробуйте на дебиане принудительно на туннель поставить такое же mtu


"GRE tunnel Cisco - Debian"
Отправлено Ninjatrasher , 03-Июл-14 12:40 
> в догонку.
> На циске выставляется ip mtu 1276.
> попробуйте на дебиане принудительно на туннель поставить такое же mtu

если на туннель ставлю mtu 1276 то tun1 не поднимается пишет ошибку.