Форум русскоязычного сообщества Ubuntu


Увидели сообщение с непонятной ссылкой, спам, непристойность или оскорбление?
Воспользуйтесь ссылкой «Сообщить модератору» рядом с сообщением!

Автор Тема: Две подсети видят друг друга  (Прочитано 2878 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн SnakeGod

  • Автор темы
  • Новичок
  • *
  • Сообщений: 13
  • -Ubuntu 7.04 Server-
    • Просмотр профиля
Две подсети видят друг друга
« : 04 Августа 2009, 08:49:33 »
Доброго всем времени суток!

Что-то гуглил-гуглил ни нашел решения по своему вопросу. Суть вопроса вот в чем:

Есть две сети, допустим сеть А (192.168.1.x) и сеть B (10.25.1.x), есть отдельный комп (К), с двумя сетевыми картами сете А и В. Задача заключается в том, чтобы компы из сети В, у которых по шлюз стоит комп К, могли видить/пинговать компы из сети А.

Знаю, что нужно настраивать таблицу маршрутизации, но что конкретно настроить, где и по какому принципу понять пока не могу.
...Когда я подниму мечь мой сверкающий, и рука моя примит суд, то отмщу врагам моим, и ненавидящим меня воздам!

Оффлайн nikulyan

  • Активист
  • *
  • Сообщений: 858
  • Чем хуже дела у Мелкософта, тем лучше у Linux'а
    • Просмотр профиля

Оффлайн Gundos

  • Новичок
  • *
  • Сообщений: 33
    • Просмотр профиля
Re: Две подсети видят друг друга
« Ответ #2 : 04 Августа 2009, 09:34:52 »
На К В /etc/sysctl.conf раскомментируй строку net.ipv4.ip_forward=1 и перезагрузи К.
Теперь К работает как маршрутизатор. Настрой корректно сеть на всех машинах, укажи шлюз К

Если одна из сетей - сеть провайдера, то позаботься о NAT

Оффлайн SnakeGod

  • Автор темы
  • Новичок
  • *
  • Сообщений: 13
  • -Ubuntu 7.04 Server-
    • Просмотр профиля
Re: Две подсети видят друг друга
« Ответ #3 : 05 Августа 2009, 02:35:58 »
На К В /etc/sysctl.conf раскомментируй строку net.ipv4.ip_forward=1 и перезагрузи К.
Теперь К работает как маршрутизатор. Настрой корректно сеть на всех машинах, укажи шлюз К

Если одна из сетей - сеть провайдера, то позаботься о NAT

суть в том, что в сети А (192.168.1.x) есть проки сервер, который крутится на Squid'е, увы я не имею к нему доступа на конфигурацию, но имею логин и пароль для доступа в Интернет, мне нужно сделать так, чтобы из сети В (10.25.1.x) я мог обратиться на прокси сервер, но почему то до сих пор не могу понять, куда и откуда мне прописывать маршрут? :o

P.S. в /etc/sysctl.conf строку расскоментировал.
...Когда я подниму мечь мой сверкающий, и рука моя примит суд, то отмщу врагам моим, и ненавидящим меня воздам!

Оффлайн nikulyan

  • Активист
  • *
  • Сообщений: 858
  • Чем хуже дела у Мелкософта, тем лучше у Linux'а
    • Просмотр профиля
Re: Две подсети видят друг друга
« Ответ #4 : 05 Августа 2009, 09:02:32 »
Тогда гугли на счёт моста, и сможешь, обращаться из другой сети к проксе ....

Оффлайн Tokh

  • Активист
  • *
  • Сообщений: 705
    • Просмотр профиля
Re: Две подсети видят друг друга
« Ответ #5 : 05 Августа 2009, 10:39:17 »
Знаю, что нужно настраивать таблицу маршрутизации, но что конкретно настроить, где и по какому принципу понять пока не могу.

Статья http://openvpn.net/papers/openvpn-101.pdf (2Мб) частично посвящена именно этому. Надо творчески спроецировать на себя.

В принципе, для этого есть команда route. Есть тема FAQ https://forum.ubuntu.ru/index.php?topic=12454.0

Принцип прост. Маршрут даёт информацию о том куда надо оправлять пакеты с определёнными адресами. "Определённые адреса" задаются как сами адреса 192.168.0.22/255.255.255.255, как конкретные сети 192.168.0.0/255.255.255.0, и/или иногда указывается сетевая карта через которую пакет будет уходить.
При этом есть понятие шлюза по умолчанию - маршрут по которому отправлять все пакеты не принадлежащие своей сети и для которых нет других маршрутов.

Маршруты перебираются в порядке возрастания метрики. Сначала маршруты с меньшей метрикой, потом - с большей.

А теперь ответ: Поскольку машина А совсем недоступна для конфигурирования и нельзя указать ей что сетка 10.25.1.* находится позади интерфейса для локальной сети 192.168.1.*
, то машина А будет слать ответные для В пакеты (на адрес 10.25.1.в) не через "внутренний" интерфейс и машине К, а через "наружнюю" сетевушку своему шлюзу по умолчанию, а тот шлюз тоже не знает ... и не выйдет с маршрутизацией, пока нет доступа к настроке машины А. Придётся делать NAT/MASQUERADE и подобное на машине К. См. https://forum.ubuntu.ru/index.php?topic=20334.0
или Руководство по iptables (Iptables Tutorial 1.1.19) http://www.opennet.ru/docs/RUS/iptables/

Или по поиску избитая тема - как раздать интернет с одного компа на остальные.

P.S. Идею про мосты не догнал, имхо не тот случай. Или тот?
StarDict и Mueller помогут против английского мануала.

Оффлайн nikulyan

  • Активист
  • *
  • Сообщений: 858
  • Чем хуже дела у Мелкософта, тем лучше у Linux'а
    • Просмотр профиля
Re: Две подсети видят друг друга
« Ответ #6 : 05 Августа 2009, 11:07:44 »

P.S. Идею про мосты не догнал, имхо не тот случай. Или тот?


Это то что ему надо, чтоб из одной сети видить другую, настраеваешь мост ( Linux Bridge ), он тебе просто тупо кидает
из одной сеть в другую пакеты. Вот и всё.

1.  http://xgu.ru/wiki/Linux_Bridge
2.  http://www.opennet.ru/base/net/linux_bridge.txt.html
« Последнее редактирование: 05 Августа 2009, 11:24:54 от nikulyan »

Оффлайн graddata

  • PreSale
  • Администратор
  • Старожил
  • *
  • Сообщений: 1841
  • BIGCloud
    • Просмотр профиля
Re: Две подсети видят друг друга
« Ответ #7 : 05 Августа 2009, 11:25:25 »
а если в iptables  redirect сделать по порту 3128?

Оффлайн SnakeGod

  • Автор темы
  • Новичок
  • *
  • Сообщений: 13
  • -Ubuntu 7.04 Server-
    • Просмотр профиля
Re: Две подсети видят друг друга
« Ответ #8 : 06 Августа 2009, 03:45:44 »
Статья http://openvpn.net/papers/openvpn-101.pdf (2Мб) частично посвящена именно этому. Надо творчески спроецировать на себя.

В принципе, для этого есть команда route. Есть тема FAQ https://forum.ubuntu.ru/index.php?topic=12454.0

Принцип прост. Маршрут даёт информацию о том куда надо оправлять пакеты с определёнными адресами. "Определённые адреса" задаются как сами адреса 192.168.0.22/255.255.255.255, как конкретные сети 192.168.0.0/255.255.255.0, и/или иногда указывается сетевая карта через которую пакет будет уходить.
При этом есть понятие шлюза по умолчанию - маршрут по которому отправлять все пакеты не принадлежащие своей сети и для которых нет других маршрутов.

Маршруты перебираются в порядке возрастания метрики. Сначала маршруты с меньшей метрикой, потом - с большей.

А теперь ответ: Поскольку машина А совсем недоступна для конфигурирования и нельзя указать ей что сетка 10.25.1.* находится позади интерфейса для локальной сети 192.168.1.*
, то машина А будет слать ответные для В пакеты (на адрес 10.25.1.в) не через "внутренний" интерфейс и машине К, а через "наружнюю" сетевушку своему шлюзу по умолчанию, а тот шлюз тоже не знает ... и не выйдет с маршрутизацией, пока нет доступа к настроке машины А. Придётся делать NAT/MASQUERADE и подобное на машине К. См. https://forum.ubuntu.ru/index.php?topic=20334.0
или Руководство по iptables (Iptables Tutorial 1.1.19) http://www.opennet.ru/docs/RUS/iptables/

Или по поиску избитая тема - как раздать интернет с одного компа на остальные.

P.S. Идею про мосты не догнал, имхо не тот случай. Или тот?


Сделал форвардинг пакетов с одного интерфейса на другой, результат тот же.

а если в iptables  redirect сделать по порту 3128?

суть в том, что компы в сети В вообще не пингуют компы в сети А, только один пингуют, а именно айпи маршрутизатора, а дальше почему то не идет :(


P.S. Идею про мосты не догнал, имхо не тот случай. Или тот?


Это то что ему надо, чтоб из одной сети видить другую, настраеваешь мост ( Linux Bridge ), он тебе просто тупо кидает
из одной сеть в другую пакеты. Вот и всё.

1.  http://xgu.ru/wiki/Linux_Bridge
2.  http://www.opennet.ru/base/net/linux_bridge.txt.html


окей, попробую
...Когда я подниму мечь мой сверкающий, и рука моя примит суд, то отмщу врагам моим, и ненавидящим меня воздам!

Оффлайн nikulyan

  • Активист
  • *
  • Сообщений: 858
  • Чем хуже дела у Мелкософта, тем лучше у Linux'а
    • Просмотр профиля
Re: Две подсети видят друг друга
« Ответ #9 : 06 Августа 2009, 09:19:52 »
Вот и я про то, ведь это для ip прозрачно, маршрутизация выполняется на втором уровне, а не на третьем ....

Оффлайн Tokh

  • Активист
  • *
  • Сообщений: 705
    • Просмотр профиля
Re: Две подсети видят друг друга
« Ответ #10 : 06 Августа 2009, 10:21:43 »
а если в iptables  redirect сделать по порту 3128?

суть в том, что компы в сети В вообще не пингуют компы в сети А, только один пингуют, а именно айпи маршрутизатора, а дальше почему то не идет :(

Здесь маршрутизатор означает "маршрутизатор К" или какой-то другой компьютер в сети А?
StarDict и Mueller помогут против английского мануала.

Оффлайн kijinga

  • Любитель
  • *
  • Сообщений: 69
  • 気乗りする
    • Просмотр профиля
Re: Две подсети видят друг друга
« Ответ #11 : 06 Августа 2009, 10:37:26 »
2 u-375 Спасибо за совет с маршрутизацией, я долго немог решить вопрос, а ответ был до ужаса прост :D

2 SnakeGod
У тебя проблемма как раз как описал u-375, для её решения (чтобы через форвард работал) необходимо в сети A прописать маршрут к сети B, это обязательно, иначе через форвардинг не настроить (тогда пробуй другой способ).

Если в сетке A компы на Windows, то нужно компу сети A прописать в командной строке

route -p ADD 10.25.1.0 MASK 255.255.255.0 192.168.1.z
192.168.1.z - это К. (-p - добавить и сохранить, т.е. будет работать и после перезагрузки) Поиграй с настройками маски, т.к. я тестировал между двумя 192.168.1.0 и 192.168.3.0

Нужно эту команду добавить каждому компу сетки A (до которого конечно хочешь достучаться), или попробовать добавить на дефолтный шлюз сети A, по идее остальные через него пойдут куда надо.

На Ubunte то же, только команда немного подругому будет, но это сам уж разберёшься.

Проблемма в том, что дефолтный комп, как я понял, тебе недоступен. Если так то надо что-то другое попробовать (т.е. наверно придется какие программулины ставить, Bridge - я кстати тоже к доп. программулинам отношу, т.к. он не стоит по умолчанию)

 

Страница сгенерирована за 0.018 секунд. Запросов: 20.