1

У меня очень мало знаний о компьютерных сетях. На самом деле, я никогда не получал никакого образования, связанного с сетями, но научился немногим, читая сам. Я сталкиваюсь с проблемой, связанной с сетью, и я был бы признателен, если бы вы могли мне помочь.

Вот моя текущая сеть настроена. На всех сетевых устройствах включен DHCP-сервер, и все IP-адреса являются статическими IP-адресами.

Пожалуйста, нажмите здесь, чтобы увидеть установочное изображение

Проблема: я могу подключиться к любому устройству, если я подключен к DIR 600L. Например, я могу использовать ssh/ping для 192.168.0.3 из 192.168.2.2 или ssh для 192.168.1.3 из 192.168.2.5, и это то, что я хочу, чтобы иметь возможность подключаться к любому устройству с любого устройства.

Я могу подключиться к тем устройствам, которые подключены к DWR 720 или DIR 505, но не к тем устройствам, которые подключены к DIR 600L, если я подключен к DIR 505. Например, я могу ssh/ping с 192.168.1.4 до 192.168.0.3 или до 192.168.1.3, но не до 192.168.2.4

Я могу подключиться только к тем устройствам, которые подключены к DWR 720, если я подключен к DWR 720, но не к любому устройству, подключенному к DIR 505 или DIR 600L. Например я не могу ssh/ping до 192.168.0.3 до 192.168.1.4 или до 192.168.2.2

Я не понимаю, почему я могу соединиться так, а не иначе. В настройках брандмауэра (ufw) я добавил правила, разрешающие все соединения с диапазоном IP-адресов 192.168.0.1/24, 192.168.1.1/24 и 192.168.2.1/24 на всех устройствах. Я использую следующие ОС на устройствах в настройке - LibreElec Kodi на RPi B+ (IP-адрес: 192.168.0.3). Raspbian stretch server на RPi ноль (IP-адрес: 192.168.1.3). Raspbian Stretch Desktop на RPi 3B+ (IP-адрес 192.168.2.4). Kde Neon на обоих ноутбуках (IP-адрес 192.168.1.4 и 192.168.2.2).

Как я могу настроить сеть таким образом, чтобы я мог получить доступ к любому устройству с любого другого устройства? Почему-то я не могу подключить все устройства к DIR 600L, который работает отлично. Когда я перемещаюсь из одной комнаты в другую, мне приходится менять точку доступа, к которой я подключен.

3 ответа3

3

Вы должны понимать концепцию подсетей и таблиц маршрутизации. Сети основаны на пакетах. Когда ваши хосты подключаются к своим маршрутизаторам, их таблица маршрутизации, IP-адрес и т.д. Настраивается через протокол DHCP (в вашем случае вы можете установить их вручную). Большинство конечных точек имеют только один "маршрут по умолчанию", в котором говорится, что если вы хотите отправить пакет с адресом / подсетью, отправьте его на маршрутизатор с IP-адресом.

Узлы (еще один термин для хоста), которые напрямую связаны друг с другом, могут использовать протокол ARP уровня Ethernet, чтобы выяснить, какой хост уровня Ethernet (уникально идентифицируемый через его MAC-адрес) относится к IP-адресу маршрута по умолчанию.

Все ваши компьютеры могут делать это, поэтому они всегда смогут пересылать IP-пакеты "своему" маршрутизатору и использовать "сервисы" маршрутизатора, такие как интерфейс конфигурации http.

Теперь, когда вы подключены к 600L, все, что вы делаете, когда хотите подключиться к IP, это пересылать пакеты на этот маршрутизатор. Этот маршрутизатор действует как "клиент" следующего маршрутизатора, 505. Поэтому он также имеет запись маршрута по умолчанию, которая позволяет ему пересылать пакеты для IP-адресов за пределы своей подсети. То же самое относится к следующему маршрутизатору.

Например: если вы отправите пакет с 192.168.2.5 на DNS-сервер Google 8.8.8.8, он правильно достигнет пункта назначения, поскольку все задействованные маршрутизаторы знают, как переслать пакет через записи маршрута по умолчанию.

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

Та же самая ситуация применяется для 505, но вам нужно добавить только одну запись таблицы маршрутизации, потому что она уже знает, как пересылать пакеты в 720 по маршруту по умолчанию. Таким образом, вы просто добавляете одну дополнительную запись, которая указывает пересылать пакеты от 192.168.2/24 до 192.168.1.2

2

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


Самое главное, что каждый ваш маршрутизатор вообще ничего не знает о других подсетях. Например, DIR 505 не знает о существовании 192.168.2.0/24, а DWR 720 не знает, что существует 192.168.1.0/24.

Все они по умолчанию имеют простую конфигурацию маршрутизации, которая сообщает им

  1. 192.168.x.0/24 прямо на моем интерфейсе локальной сети,
  2. 0.0.0.0/0 (все остальное) проходит через шлюз WAN.

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

Вы можете решить эту проблему, добавив статические маршруты к каждому из ваших маршрутизаторов. На DWR-720 добавьте маршруты для обеих сетей:

  • до 192.168.1.0/24 (маска 255.255.255.0) через 192.168.0.2 (DIR-505)
  • до 192.168.2.0/24 через 192.168.0.2

Обратите внимание, что адрес шлюза всегда с точки зрения маршрутизатора, который вы настраиваете. (Также будет работать и один более широкий маршрут, но давайте будем проще.)

И на самом DIR-505 добавьте только один маршрут (маршрут по умолчанию заботится об остальном):

  • до 192.168.2.0/24 через 192.168.1.2

Очевидный вопрос: почему вы можете подключиться из "внутренней" сети и при этом получать ответы обратно? Ответ заключается в том, что все эти маршрутизаторы выполняют NAT; они переписывают исходный IP исходящих пакетов.

Например, когда ноутбук 192.168.2.2 подключается к принтеру 192.168.1.5, принтер фактически думает, что его клиент - 192.168.1.2 (DIR-600L). Таким образом, он отправляет ответы обратно на 192.168.1.2, который распознает установленное соединение и перезаписывает адрес обратно на 192.168.2.2.

После настройки статических маршрутов вы можете (и действительно должны) отключить NAT на DIR-505 и DIR-600L. Это необходимо только на самом внешнем краю вашей сети (DWR-720 подключается напрямую к Интернету).


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

Попробуйте найти настройки брандмауэра на DIR-505 и DIR-600L и полностью отключить его.

2

Вероятно, вам не нужно связываться с настройками брандмауэра или статическими маршрутами. Все, что вам нужно сделать, это переключить DIR 505 в режим повторителя, как описано в руководстве на стр. 97. Затем подключите 505 к одному из портов локальной сети 600L вместо интернет-порта. Таким образом, все маршрутизаторы должны быть частью одной сети, а не формировать 3 отдельных. Теперь 600L будет действовать только как коммутатор и точка доступа Wi-Fi, при этом все дополнительные функции маршрутизации и брандмауэра не используются.

Вы также должны деактивировать сервер DHCP в двух из трех маршрутизаторов, поскольку в сети должен быть только один из них. И вам нужно убедиться, что все 3 маршрутизатора имеют разные IP-адреса, но все находятся в одной подсети, например, 192.168.0.1/24.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .