LINUX.ORG.RU
решено ФорумAdmin

Маршрутизация внутри существующей сети

 


0

1

Всем привет!

У меня сложилась следующая схема на работе:

http://imgur.com/a/N8WvF

  • 192.168.54.12 - мой компьютер (OSX)
  • 192.168.54.54 - оффтопик с RDP
  • 192.168.0.11 - железяка, с которой мне нужно настроить обмен UDP-пакетами

На своём компьютере я попробовал добавить 192.168.54.54 в качестве шлюза в 192.168.0.1/24 подсеть, однако при таком варианте пакет идет сперва на 192.168.54.1, а оттуда отправляется вверх.

Возможно ли настроить доступ к 192.168.0.11 с моей машины, по возможности не меняя настроек на 192.168.54.1? Или такое невозможно и следует копать в сторону прокси?


Если у тебя сеть osx, офтопика и роутера 192.168.54.0/24 и сеть 192.168.0.0/24 за 192.168.54.54 то нужен всего лишь маршрут на 192.168.0.0/24 gw 192.168.54.54. И не будет никаких пакетов на 192.168.54.1

disels
()

«На своём компьютере я попробовал добавить 192.168.54.54 в качестве шлюза в 192.168.0.1/24 подсеть, однако при таком варианте пакет идет сперва на 192.168.54.1, а оттуда отправляется вверх.»
И как Вы это определили?
«192.168.0.1/24 подсеть» - это не подсеть а хост. 192.168.0.0/24 подсеть
Маска сети на устройствах 192.168.54.12 192.168.54.1 192.168.54.54 одна и та же? Какая?
Если пингануть с 192.168.54.12 ip 192.168.0.11, то появляется в кэше арп мак адрес для 192.168.54.54 на 192.168.54.12? Предварительно нужно удалить запись arp для 192.168.54.54 на 192.168.54.12.
Нужно запустить tcpdump на 192.168.54.54 и посмотреть на ping пакеты которые летят на 192.168.0.11 и возвращаются от 192.168.0.11.
Дефолт на 192.168.0.11 есть?
ip forwarding включен на 192.168.54.54 ?

Vlad-76 ★★★★
()
Последнее исправление: Vlad-76 (всего исправлений: 3)
Ответ на: комментарий от Vlad-76

И как Вы это определили?

Ориентировался на traceroute:

% traceroute 192.168.0.11
traceroute to 192.168.0.11 (192.168.0.11), 64 hops max, 52 byte packets
 1  192.168.54.1 (192.168.54.1)  63.725 ms  60.608 ms  60.654 ms
 2  217.0.114.221 (217.0.114.221)  83.981 ms  84.392 ms  84.246 ms

Маска сети на устройствах 192.168.54.12 192.168.54.1 192.168.54.54 одна и та же? Какая?

На 192.168.54.12 и 192.168.54.54 маска 255.255.255.0, на 192.168.54.1 сейчас не могу глянуть, возможно такая же.

Если пингануть с 192.168.54.12 ip 192.168.0.11, то появляется в кэше арп мак адрес для 192.168.54.54 на 192.168.54.12?

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

Доступ к 54.54 есть только по RDP, потому с arp чистого эксперимента не получится. Впрочем я могу попробовать использовать разные рабочие станции для RDP и пинга, но на это потребуется время.

ip forwarding включен на 192.168.54.54?

Гипотетически да. В реестре включен IPEnableRouter, машина перезагружена, но как оно работает я пока не выяснял, поскольку посчитал что до этой фазы ещё не дошло.

Я полагаю что в моём случае вариант с маршрутизацией не применим, поскольку я не могу редактировать настройки сети на 192.168.0.11

sli
() автор топика
Ответ на: комментарий от sli

В качестве запасного варианта воспользовался Simple UDP proxy/pipe 0.4.1. Не элегантно, но работает как требовалось.

sli
() автор топика
Ответ на: комментарий от sli

«Если пинговать то в ответ приходят только таймауты.» правильно если целевой хост не отвечает - не отвечать может по разным причинам - фиреволл, маршрутизация не работает.

Покажите вывод ip route на 192.168.54.12
# arp -a на 192.168.54.12 что показывает после пинга?

если на 192.168.0.11 прописан дефолт, то ничего делать с ним больше не нужно.
в компе 54.54 два сетевых интерфейса - один в роутер - другой в 0.30? Можно между 0.30 0.11 поставить свич и через него же пустить линк который между 54.1 и 54.12 - т.е. нужен свич и два патчкорда. Далее на 54.12 поднимаете secondary IP из сети 192.168.0.0.
Вообще правильного маршрута на 54.12, дефолта на 0.11 и форвардинга на 54.54 должно хватить.
Интересно, фича proxy arp на 54.54 не поможет?

Vlad-76 ★★★★
()
Ответ на: комментарий от Vlad-76

Надеялся что это должно сказываться на результатах, но видимо необходимо отметить, что к LAN я получаю доступ через VPN.

Покажите вывод ip route на 192.168.54.12

Таблицу маршрутизации?

~ % sudo route add -net 192.168.0.0/24 192.168.54.54
add net 192.168.0.0: gateway 192.168.54.54

~ % netstat -nr                                     
Routing tables

Internet:
Destination        Gateway            Flags        Refs      Use   Netif Expire
default            192.168.1.1        UGSc           23        0     en0
default            link#10            UCSI            1        0    ppp0
8.8.4.4            link#10            UHW3I           0        7    ppp0     16
87.128.87.28       192.168.1.1        UGHS            0        0     en0
127                127.0.0.1          UCS             0        0     lo0
127.0.0.1          127.0.0.1          UH              4      372     lo0
169.254            link#4             UCS             0        0     en0
192.168.0          192.168.54.54      UGSc            0        0    ppp0
192.168.1          link#4             UCS             2        0     en0
192.168.1.1/32     link#4             UCS             1        0     en0
192.168.1.1        ec:43:f6:da:4d:98  UHLWIir        25      228     en0   1192
192.168.1.42/32    link#4             UCS             0        0     en0
192.168.1.43       0:25:d3:6b:8:a2    UHLWI           0        0     en0   1156
192.168.1.44       a:0:27:72:73:f6    UHLWI           0        0     en0   1182
192.168.54         ppp0               USc             1        0    ppp0
192.168.54.1       192.168.54.16      UH              0        0    ppp0
224.0.0/4          link#4             UmCS            2        0     en0
224.0.0/4          link#10            UmCSI           0        0    ppp0
224.0.0.251        1:0:5e:0:0:fb      UHmLWI          0        0     en0
239.255.255.250    1:0:5e:7f:ff:fa    UHmLWI          0      127     en0
255.255.255.255/32 link#4             UCS             0        0     en0
255.255.255.255/32 link#10            UCSI            0        0    ppp0

если на 192.168.0.11 прописан дефолт, то ничего делать с ним больше не нужно.

Не имею возможности проверить.

Интересно, фича proxy arp на 54.54 не поможет?

Почитал, звучит как идеальное решение. Но поскольку мне нужен только один порт - достаточно и Simple UDP proxy/pipe на 54.54.

Большое спасибо за детальный анализ!

sli
() автор топика
Ответ на: комментарий от sli

Роут на источнике не правильно указан. Тут простые 2 сетки . сделай роуты как я указал и все будет нормально , без прокси и прочей ерунды

disels
()
Ответ на: комментарий от disels

Я не очень умный, это какая строчка?

Ты указал:

маршрут на 192.168.0.0/24 gw 192.168.54.54

Я так понимаю в osx это эквивалентно

~ % sudo route add -net 192.168.0.0/24 192.168.54.54
add net 192.168.0.0: gateway 192.168.54.54

Тут некорректна первая строчка? Для информативности вырезал все что не относилось напрямую.

192.168.0          192.168.54.54      UGSc            0        0    ppp0
192.168.54         ppp0               USc             1        0    ppp0
192.168.54.1       192.168.54.16      UH              0        0    ppp0

sli
() автор топика
Ответ на: комментарий от sli

Я так понимаю в osx это эквивалентно

Да

Тут некорректна первая строчка? Для информативности вырезал все что не относилось напрямую.

Как раз таки корректна Но вот схему ты похоже рисовал не корректно.

ppp0

У тебя сеть 192.168.54.0/24 висит на pptp? Если так то в любом случае (прокси/не прокси) у тебя трафик будет ходить через 192.168.54.1

disels
()
Ответ на: комментарий от sli

«Надеялся что это должно сказываться на результатах, но видимо необходимо отметить, что к LAN я получаю доступ через VPN.»

192.168.0          192.168.54.54      UGSc            0        0    ppp0

proxy arp не помогет. Можно пробросить локальный порт с IP 54.12 на порт IP 0.11, через ssh туннель.

Vlad-76 ★★★★
()
Ответ на: комментарий от disels

Одного UDP-порта оказалось недостаточно, потому поставил на 54.54 виртуалку с Linux. В качестве эксперимента подвесил её на тот же 54.54 интерфейс, c твоим маршрутом работает как часы, пинги обратно приходят без проблем.

sli
() автор топика
Ответ на: комментарий от sli

И какой маршрут у пакетов ping сейчас получается? у виртуалки какой IP адрес или адреса? сколько физических интерфейсов на 54.54 ?
Сколько интерфейсов в виртуалке, с какими IP адресами? «пинги обратно приходят без проблем» пинги с 0.11?
ps
полагаю IP forwarding в хостовой винде (насколько я понял это машинка с виндой) на 54.54 не работает.
Через виртуалку работает, а через хостовую ноду нет -чудеса однако.

Vlad-76 ★★★★
()
Последнее исправление: Vlad-76 (всего исправлений: 4)
Ответ на: комментарий от Vlad-76

И какой маршрут у пакетов ping сейчас получается?

$ tracepath 192.168.0.11
 1?: [LOCALHOST]                                         pmtu 1500
 1:  192.168.54.54                                         5.216ms 
 1:  192.168.54.54                                         2.653ms 
 2:  192.168.0.11                                          6.503ms reached
     Resume: pmtu 1500 hops 2 back 2 

у виртуалки какой IP адрес или адреса?

192.168.54.17

сколько физических интерфейсов на 54.54 ?

Физических два - Wi-Fi смотрит в 54 сеть и кабель в нулевую.

Сколько интерфейсов в виртуалке, с какими IP адресами?

Один, 192.168.54.17

«пинги обратно приходят без проблем» пинги с 0.11?

С 192.168.0.11 и 192.168.0.111 (насколько я понял оба IP висят на одном физическом интерфейсе)

полагаю IP forwarding в хостовой винде (насколько я понял это машинка с виндой) на 54.54 не работает.

Как ни странно - работает. Попробовал отключить - роут не работает. Включил, перезагрузил - работает.

Через виртуалку работает, а через хостовую ноду нет -чудеса однако.

Хостовая нода - это мой osx который через VPN коннектится? Или 192.168.54.54, на котором крутится виртуалка?

sli
() автор топика
Ответ на: комментарий от sli

Хостовая нода это 192.168.54.54, на которой крутится виртуалка.
Судя по трасcировке пакеты на виртуалку 192.168.54.17 не попадают и как бы через нее не ходят, а ходят через хостовую ОСь
Как могла помочь виртуалка на с одним единственным интерфейсом? Разрыв мозга!!))
может быть и без виртуалки все норм работает -заработал forwarding в хостовой ОСи?
На виртуалке IP .54.17, а маршрут на 54.12 направляет пакеты к 0.11 через 54.54?
в виртуалке есть маршрут к 0.11?

Vlad-76 ★★★★
()
Ответ на: комментарий от Vlad-76

Судя по трасcировке пакеты на виртуалку 192.168.54.17 не попадают и как бы через нее не ходят, а ходят через хостовую ОСь

Извини, наверное я неудачно выразился и ввел тебя в заблуждение - я сижу в этой виртуалке и экспериментирую оттуда же. Потому 1?: [LOCALHOST] это по сути и есть 192.168.54.17

sli
() автор топика
Ответ на: комментарий от sli

Значит форвардинг в хостовой ОСи 192.168.54.54 работает.
И если 0.11 отвечает на ICMP(ping) пакеты с обратным адресом 54.17, то на 0.11 есть маршрут по умолчанию.
Остается запустить на 192.168.54.54 tcpdump (wireshark на винде) на wifi интерфейсе и посмотреть доходят ли ICMP пакеты до 192.168.54.54 если запустить ping на 54.12 в сторону 0.11

Vlad-76 ★★★★
()
Последнее исправление: Vlad-76 (всего исправлений: 1)
Ответ на: комментарий от sli

Если компы 54.12 и 54.54 по wifi получают от wifi роутера IP адреса, и при этом в wifi роутер они смотрят через ppp0 интерфейсы, то скорее всего у Вас комп 54.12 не пингует 54.54. и в этом проблема.
ppp0 это не широковещательные интерфейсы, а типа точка-точка
Как вариант Вам нужно выдать с wifi роутера IP адрес компу который сейчас 54.12 из сети отличной от 54.0/24. На wifi роутере прописать маршрут к 0.11 и на 54.54 прописать маршрут к новому IP компа который сейчас 54.12
wifi роутер может выдавать IP из разных сетей?

Vlad-76 ★★★★
()
Ответ на: комментарий от Vlad-76

через ppp0 смотрит только мой макбук из VPN, 54.54 физически расположен в сети через беспроводной сетевой адаптер. Хост 54.54 пингуется с 54.12.

Я не имею доступа к админке Wi-Fi роутера.

В принципе вариант с виртуальным хостом меня вполне устраивает - чтобы не мусорить я спрятал его внутрь NAT при помощи VirtualBox и наружу только выставил порты для SSH и UDP-соединений, при этом во втором случае выставил их сразу в интерфейс на 0.30. Работает хорошо.

sli
() автор топика
Ответ на: комментарий от sli

видимо потому что wifi роутер ничего не знает о сети в которой находится хост 0.11. И это изначальная проблема.

Vlad-76 ★★★★
()
Последнее исправление: Vlad-76 (всего исправлений: 1)
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.