LINUX.ORG.RU
ФорумAdmin

Проблема с маршрутизацией

 , , ,


0

1

Доброго времени суток!
Заранее прошу простить за столь большую «портянку» текста. Читал Lorcode но так и не нашел как спрятать «портянку» в спойлер. Тег [«cut»][«/cut»]] работает только на новостях.
Опишу проблему:

Есть 2 сети Сеть №1 192.168.100.0/24 и сеть №2 192.168.55.0/24. У первой сети в качестве шлюза стоит Debian 7 (192.168.100.100) у Второй Mikrotik Rb951 (192.168.55.10). Debian и Mikrotik соединены посредством Ip-ip тунеля. Адреса в тунеле Mikrotik 10.0.0.1/30 Debian 10.0.0.2/30. Маршруты на сети с обоих сторон настроены. Пинги из одной сети в другую ходят отлично, шары работают. Только вот из сети за Debian если делать трассировку, то взаместо хостов «звездочки». Из-за этого некоторые соединения, например RDP не работают.. А вот из сети за Микротиком в сеть к Дебиану ходит все отлично и работает без проблем.
Debian:

root@debian:~# ifconfig tun0
tun0 Link encap:IPIP Tunnel  HWaddr
          inet addr:10.0.0.2  P-t-P:10.0.0.1  Mask:255.255.255.252
          UP POINTOPOINT RUNNING NOARP  MTU:1500  Metric:1
          RX packets:571429 errors:0 dropped:0 overruns:0 frame:0
          TX packets:3210186 errors:4 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:0
          RX bytes:61813506 (58.9 MiB)  TX bytes:406243766 (387.4 MiB)

root@debian:~# route -n
Kernel IP routing table
Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
0.0.0.0         109.226.250.20  0.0.0.0         UG    0      0        0 eth0
10.0.0.0        0.0.0.0         255.255.255.252 U     0      0        0 tun0
109.226.250.0   94.73.231.189   255.255.255.0   UG    0      0        0 eth0
109.226.250.20  0.0.0.0         255.255.255.255 UH    0      0        0 eth0
192.168.55.0    10.0.0.1        255.255.255.0   UG    0      0        0 tun0
192.168.100.0   0.0.0.0         255.255.255.0   U     0      0        0 eth1

root@debian:~# iptables-save
# Generated by iptables-save v1.4.14 on Thu Dec 11 08:53:58 2014
*nat
:PREROUTING ACCEPT [472453:38991445]
:INPUT ACCEPT [83749:6707861]
:OUTPUT ACCEPT [5764:609370]
:POSTROUTING ACCEPT [76671:4296659]
-A POSTROUTING -s 192.168.100.0/24 -o eth0 -j MASQUERADE
COMMIT
# Completed on Thu Dec 11 08:53:58 2014
# Generated by iptables-save v1.4.14 on Thu Dec 11 08:53:58 2014
*filter
:INPUT ACCEPT [153002:20190459]
:FORWARD ACCEPT [23556372:21115993286]
:OUTPUT ACCEPT [6627107:15237083261]
COMMIT
# Completed on Thu Dec 11 08:53:58 2014

root@debian:~# sysctl -a |grep ip_forward
net.ipv4.ip_forward = 1

root@debian:~# sysctl -a |grep rp_filter
net.ipv4.conf.all.rp_filter = 0
net.ipv4.conf.all.arp_filter = 0
net.ipv4.conf.default.rp_filter = 0
net.ipv4.conf.default.arp_filter = 0

PING 192.168.55.1 (192.168.55.1) 56(84) bytes of data.
64 bytes from 192.168.55.1: icmp_req=1 ttl=127 time=1.56 ms
64 bytes from 192.168.55.1: icmp_req=2 ttl=127 time=0.868 ms
64 bytes from 192.168.55.1: icmp_req=3 ttl=127 time=1.01 ms
^C
--- 192.168.55.1 ping statistics ---
3 packets transmitted, 3 received, 0% packet loss, time 2002ms
rtt min/avg/max/mdev = 0.868/1.150/1.567/0.303 ms

root@debian:~# traceroute 192.168.55.1
traceroute to 192.168.55.1 (192.168.55.1), 30 hops max, 60 byte packets
 1  * * *
 2  192.168.55.1 (192.168.55.1)  1.391 ms * *
root@debian:~#

С виндовой машины из сети за Debian
C:\Users\CeMKa>tracert 192.168.55.1

Трассировка маршрута к 192.168.55.1 [192.168.55.1]
с максимальным числом прыжков 30:

  1    <1 мс    <1 мс    <1 мс  192.168.100.100 [192.168.100.100]
  2     *        *        *     Превышен интервал ожидания для запроса.
  3     *        *        *     Превышен интервал ожидания для запроса.
  4     *        *        *     Превышен интервал ожидания для запроса.
  5     *        *        *     Превышен интервал ожидания для запроса.
  6     *        *        *     Превышен интервал ожидания для запроса.
  7     1 ms     1 ms     1 ms  192.168.55.1 [192.168.55.1]

Трассировка завершена.

C:\Users\CeMKa>

При этом на Debian tcpdump показывает
root@debian:~# tcpdump -n -i tun0
tcpdump: verbose output suppressed, use -v or -vv for full protocol decode
listening on tun0, link-type RAW (Raw IP), capture size 65535 bytes
09:17:30.180318 IP 192.168.100.50 > 192.168.55.1: ICMP echo request, id 1, seq 565, length 72
09:17:33.991774 IP 192.168.100.50 > 192.168.55.1: ICMP echo request, id 1, seq 566, length 72
09:17:37.992212 IP 192.168.100.50 > 192.168.55.1: ICMP echo request, id 1, seq 567, length 72
09:17:41.992463 IP 192.168.100.50 > 192.168.55.1: ICMP echo request, id 1, seq 568, length 72
09:17:45.992316 IP 192.168.100.50 > 192.168.55.1: ICMP echo request, id 1, seq 569, length 72
09:17:49.992337 IP 192.168.100.50 > 192.168.55.1: ICMP echo request, id 1, seq 570, length 72
09:17:53.992891 IP 192.168.100.50 > 192.168.55.1: ICMP echo request, id 1, seq 571, length 72
09:17:57.992827 IP 192.168.100.50 > 192.168.55.1: ICMP echo request, id 1, seq 572, length 72
09:18:01.993061 IP 192.168.100.50 > 192.168.55.1: ICMP echo request, id 1, seq 573, length 72
09:18:05.993728 IP 192.168.100.50 > 192.168.55.1: ICMP echo request, id 1, seq 574, length 72
09:18:09.993036 IP 192.168.100.50 > 192.168.55.1: ICMP echo request, id 1, seq 575, length 72
09:18:13.993475 IP 192.168.100.50 > 192.168.55.1: ICMP echo request, id 1, seq 576, length 72
09:18:17.993963 IP 192.168.100.50 > 192.168.55.1: ICMP echo request, id 1, seq 577, length 72
09:18:21.993875 IP 192.168.100.50 > 192.168.55.1: ICMP echo request, id 1, seq 578, length 72
09:18:25.994078 IP 192.168.100.50 > 192.168.55.1: ICMP echo request, id 1, seq 579, length 72
09:18:29.994554 IP 192.168.100.50 > 192.168.55.1: ICMP echo request, id 1, seq 580, length 72
09:18:29.995903 IP 192.168.55.1 > 192.168.100.50: ICMP echo reply, id 1, seq 580, length 72
09:18:29.996390 IP 192.168.100.50 > 192.168.55.1: ICMP echo request, id 1, seq 581, length 72
09:18:29.997635 IP 192.168.55.1 > 192.168.100.50: ICMP echo reply, id 1, seq 581, length 72
09:18:29.998115 IP 192.168.100.50 > 192.168.55.1: ICMP echo request, id 1, seq 582, length 72
09:18:29.999235 IP 192.168.55.1 > 192.168.100.50: ICMP echo reply, id 1, seq 582, length 72

Виндовая машина пингует соседнюю сеть на ура
C:\Users\CeMKa>ping 192.168.55.1

Обмен пакетами с 192.168.55.1 по с 32 байтами данных:
Ответ от 192.168.55.1: число байт=32 время=1мс TTL=126
Ответ от 192.168.55.1: число байт=32 время=2мс TTL=126
Ответ от 192.168.55.1: число байт=32 время=1мс TTL=126
Ответ от 192.168.55.1: число байт=32 время=1мс TTL=126

Статистика Ping для 192.168.55.1:
    Пакетов: отправлено = 4, получено = 4, потеряно = 0
    (0% потерь)
Приблизительное время приема-передачи в мс:
    Минимальное = 1мсек, Максимальное = 2 мсек, Среднее = 1 мсек

C:\Users\CeMKa>

Сеть за Mikrotik:
C:\Users\admin>ping 192.168.100.50

Обмен пакетами с 192.168.100.50 по с 32 байтами данных:
Ответ от 192.168.100.50: число байт=32 время=2мс TTL=126
Ответ от 192.168.100.50: число байт=32 время=1мс TTL=126

Статистика Ping для 192.168.100.50:
    Пакетов: отправлено = 2, получено = 2, потеряно = 0
    (0% потерь)
Приблизительное время приема-передачи в мс:
    Минимальное = 1мсек, Максимальное = 2 мсек, Среднее = 1 мсек
Control-C
^C
C:\Users\admin>tracert -d 192.168.100.50

Трассировка маршрута к 192.168.100.50 с максимальным числом прыжков 30

  1    <1 мс    <1 мс     1 ms  192.168.55.10
  2     1 ms     1 ms     1 ms  10.0.0.2
  3     1 ms     1 ms     1 ms  192.168.100.50

Трассировка завершена.

C:\Users\admin>



Вот почему-то с стороны сети за Debian в трассировке не просвечивается хоп 10.0.0.1
Файрволл на Микротике работает на ограничения только своего внешнего интерфейса. Маскарадит, пробрасывает нужные порты, остальное дропает, подчеркну правила файрвола привязаны жестко к внешнему интерфейсу, не к тунелю и не глобально. Пробовал отключать все правила нафиг - не помогает.

Мб ЛОР мне сможет помочь разобраться в проблеме?


Покажи

ip firewall filter print
ip firewall nat print
Turbid ★★★★★ ()
Ответ на: Покажи от Turbid
[admin@MixMax Master] > ip firewall filter print 
Flags: X - disabled, I - invalid, D - dynamic 
 0   ;;; Added by webbox
     chain=input action=accept protocol=icmp 

 1   ;;; Added by webbox
     chain=input action=accept connection-state=established 
     in-interface=Internet MixMax #13 

 2   ;;; Added by webbox
     chain=input action=accept connection-state=related 
     in-interface=Internet MixMax #13 

 3   ;;; WinBox accept
     chain=input action=accept src-address=94.73.231.189 
     in-interface=Internet MixMax #13 

 4   ;;;          RDP 
     chain=forward action=accept protocol=tcp 
     in-interface=Internet MixMax #13 
     dst-port=3389,3333,7739,7754,7714,7747,7731 

 5   ;;; Added by webbox
     chain=forward action=jump jump-target=customer 
     in-interface=Internet MixMax #13 

 6   ;;;              
     chain=forward action=accept protocol=tcp 
     in-interface=Internet MixMax #13 dst-port=1540-1545,1560-1590 

 7   ;;;        55.3
     chain=forward action=accept protocol=tcp 
     in-interface=Internet MixMax #13 dst-port=2221,2222,80 

 8   ;;;          PPTP
     chain=input action=accept protocol=tcp dst-port=1723 

 9   chain=input action=accept protocol=gre 

10   ;;; Added by webbox
     chain=input action=drop in-interface=Internet MixMax #13 

11   ;;; Added by webbox
     chain=customer action=accept connection-state=established 

12   ;;; Added by webbox
     chain=customer action=accept connection-state=related 

13 X ;;; Added by webbox
     chain=customer action=drop 
[admin@MixMax Master] > ip firewall nat print 
Flags: X - disabled, I - invalid, D - dynamic 
 0   ;;; Added by webbox
     chain=srcnat action=masquerade out-interface=Internet MixMax #13 

 1   ;;; RDP 1C Server
     chain=dstnat action=dst-nat to-addresses=192.168.55.1 to-ports=3389 protocol=tcp dst-address=197.209.164.196 dst-port=3333 

 2   ;;;               1CSERVER
     chain=dstnat action=dst-nat to-addresses=192.168.55.1 protocol=tcp dst-address=197.209.164.196 dst-port=1540-1545,1560-1590 

 3   ;;; Nod32 
     chain=dstnat action=dst-nat to-addresses=192.168.55.3 protocol=tcp dst-address=197.209.164.196 dst-port=2221,2222,80,3389 

 4   ;;; RDP                   
     chain=dstnat action=dst-nat to-addresses=192.168.55.39 to-ports=3389 protocol=tcp dst-address=197.209.164.196 dst-port=7739 

 5   ;;; RDP          
     chain=dstnat action=dst-nat to-addresses=192.168.55.37 to-ports=3389 protocol=tcp dst-address=197.209.164.196 dst-port=7737 

 6   ;;; RDP              
     chain=dstnat action=dst-nat to-addresses=192.168.55.54 to-ports=3389 protocol=tcp dst-address=197.209.164.196 dst-port=7754 

 7 X ;;; RDP            
     chain=dstnat action=dst-nat to-addresses=192.168.55.47 to-ports=3389 protocol=tcp dst-address=197.209.164.196 dst-port=7747 

 8   ;;; RDP         
     chain=dstnat action=dst-nat to-addresses=192.168.55.31 to-ports=3389 protocol=tcp dst-address=197.209.164.196 dst-port=7731 
[admin@MixMax Master] > 
CeMKa ()
Ответ на: комментарий от Turbid
[admin@MixMax Master] > ip route print
Flags: X - disabled, A - active, D - dynamic, 
C - connect, S - static, r - rip, b - bgp, o - ospf, m - mme, 
B - blackhole, U - unreachable, P - prohibit 
 #      DST-ADDRESS        PREF-SRC        GATEWAY            DISTANCE
 0 A S  ;;;                
        0.0.0.0/0                          197.209.164.193           1
 1 ADC  10.0.0.0/30        10.0.0.1        cemka                     0
 2 ADC  192.168.5.2/32     192.168.5.1     VPN Svobodnii             0
 3 ADC  192.168.5.3/32     192.168.5.1     VPN Irkutsk               0
 4 A S  192.168.45.0/24                    192.168.5.3               1
 5 A S  192.168.46.0/24                    192.168.5.2               1
 6 ADC  192.168.55.0/24    192.168.55.10   Local #6                  0
 7 X S  192.168.55.0/24                    192.168.5.2               1
 8 A S  192.168.100.0/24                   10.0.0.2                  1
 9 ADC  197.209.164.192/26 197.209.164.196 Internet MixMax...        0
[admin@MixMax Master] > 
CeMKa ()
Ответ на: комментарий от Turbid

Хотел сразу попробовать, но почему-то упёрто был уверен что с ip-ip должно все работать «как надо», т.к между двумя Debian ip-ip работает без косяков.
Да, вот сейчас поднял GRE - все отлично, проблема отсутствует
Благодарю за поддержку! :)
Проблема решена.

CeMKa ()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.