На чтение 8 мин Просмотров 57к.
Сергей Сакадынский
Работал в сфере IT-консалтинга, занимался созданием и администрированием интернет-ресурсов. 10 лет опыта работы по проектированию и обслуживанию компьютерных сетей.
Если вы пользователь интернета, то наверняка сталкивались с таким понятием как шлюз или основной шлюз. Часто используются другие обозначения — default gateway или шлюз по умолчанию. Это одно и то же — адрес, который иногда требуется ввести в специально отведенное для этого поле. Если он нужен для подключения к сети, эти данные сообщает провайдер или администратор. В этой статье я раскрою смысл понятия и расскажу, как узнать адрес, если он нужен, но вам его не сообщили.
Содержание
- Понятие
- Принцип работы
- Как узнать шлюз в Windows
- Наклейка на роутере
- Параметры подключения
- Командная строка
- Другие ОС
- Mac
- Linux
- Android
- iPhone
- Chrome OS
Понятие
Если вы начнёте гуглить, то прочтёте, что основной шлюз — это аппаратное или программное обеспечение для сопряжения компьютерных сетей или что-то в этом роде. Интересно, но ничего не понятно. Поэтому объясню проще: это канал, ворота, через которые локальная сеть взаимодействует с внешней сетью — интернетом. Шлюз также может соединять две или более локальные сети или их сегменты. Так работают ЛВС крупных предприятий, где много структурных подразделений и компьютеров. То есть шлюз нужен для того, чтобы сети, работающие с разными протоколами и параметрами, могли взаимодействовать друг с другом.
В качестве шлюза может выступать сервер или специальное устройство. В вашей домашней сети это обычный вайфай роутер.
Принцип работы
Проводные и беспроводные устройства в локальной сети (ЛВС) используют для доступа в интернет общий канал — основной шлюз. Это позволяет настроить для них общие параметры подключения, контролировать трафик, задать параметры безопасности и так далее. Шлюз принимает пакеты данных из внешней сети и транслирует их на устройства внутри домашней сети. Точно так же он работает и в другом направлении: пакеты с клиентских устройств поступают в шлюз, а затем пересылаются по назначению. Выйти за пределы ЛВС или подключиться к локальной сети, минуя его, не получится.
Обычно в ЛВС вручную указывать шлюз для подключения к интернету не нужно. Все настройки автоматически раздаёт роутер. Для этого достаточно в настройках сетевого адаптера установить галочку «Получать IP-адрес автоматически».
На роутере при этом должен быть настроен DHCP-сервер. То есть он должен автоматически раздавать адреса клиентским устройствам. Все домашние маршрутизаторы обычно работают по такому принципу.
Если же, что встречается редко, DHCP на роутере отключен, то сетевые настройки вводятся вручную. В таком случае адрес указывается в этом поле:
Некоторые программы для правильной работы требуют адрес основного шлюза. Тогда возникает необходимость выяснить, какой же используется в вашей сети.
Также бывает ситуация, когда вам нужно войти в настройки роутера, но вы не знаете его адреса. Поскольку IP-адрес роутера и основной шлюз локальной сети — это одно и то же, для этого достаточно узнать адрес шлюза.
О том, как это сделать, пойдёт речь ниже.
Как узнать шлюз в Windows
Наклейка на роутере
У каждого маршрутизатора есть настройки по умолчанию. В том числе адрес для входа в веб-интерфейс. IP-адрес роутера производитель указывает на наклейке в нижней части устройства. Чтобы его узнать, достаточно перевернуть маршрутизатор. Вы увидите такую этикетку:
192.168.0.1 в этом случае адрес роутера, который используется в качестве основного шлюза сети.
Этот способ самый простой. Но здесь могут возникнуть сложности.
- Во-первых, на некоторых маршрутизаторах вместо цифр вы увидите адрес такого типа:Производители часто используют, кроме IP-адреса, такие фирменные локальные адреса. Для того, чтобы войти в настройки роутера, он подойдёт, а вот в качестве адреса шлюза его использовать не получится.
- Во-вторых, если настройки роутера менялись, его IP-адрес может отличаться от заводского. Обычно этот параметр оставляют без изменений, но в некоторых случаях вместо значения по умолчанию может быть установлен любой другой адрес. В этом случае информация на этикетке вам не поможет.
- В-третьих, роутер по разным причинам может быть физически недоступен. Например, если вы подключаетесь к сети предприятия, скорее всего, он заперт в монтажном шкафу или в отдельной комнате.
На этот случай есть способы узнать адрес шлюза, посмотрев его в свойствах подключения Windows.
Параметры подключения
Посмотреть адрес можно в свойствах сетевого подключения.
В Windows 7 в трее откройте доступные сетевые подключения, выберите активное, нажмите на него правой кнопкой мыши и выберите пункт «Состояние». В открывшемся окне нажмите кнопку «Сведения». Откроется окошко с информацией о текущем подключении.
Шлюз по умолчанию и есть основной, он же IP-адрес роутера.
В Windows 10 всё делается аналогично: нажмите ссылку «Свойства» рядом с нужным подключением, в открывшемся окне «Параметры» опуститесь вниз и кликните раздел «Свойства». Вы увидите окно с аналогичной информацией.
Командная строка
Кроме этого, для всех версий Windows есть универсальный способ узнать адрес. Сделать это можно через командную строку.
Нажмите на кнопку «Пуск», откройте «Программы» — «Стандартные» и выберите пункт «Командная строка». В Windows 10 для этого одновременно нажмите на клавиатуре кнопки Win+X и в появившемся списке кликните «Командная строка».
Ещё один способ, который подходит для всех версий операционки — с помощью клавиш Win+R вызовите утилиту «Выполнить», введите в окошко команду cmd и нажмите Enter.
Запустится консоль с командной строкой. Здесь нужно набрать команду ipconfig /all. Жмём Enter и видим вот такую информацию:
Среди всего прочего ищем то, что нас интересует.
Другие ОС
Теперь о том, как узнать основной шлюз в других операционных системах.
Mac
Как и в Windows, в Mac OS также доступны два способа посмотреть адрес основного шлюза для локальной сети — через свойства подключения и терминал.
Откройте на вашем макбуке «Системные настройки» и нажмите на иконку «Сеть». В открывшемся окне слева вы увидите список доступных подключений. Выберите активное, нажмите TCP/IP и найдите строку «Маршрутизатор».
Это и есть нужный нам шлюз.
Для поиска IP адреса шлюза через командную строку откройте «Программы» — «Утилиты» и кликните иконку «Терминал». Выполните команду route get default | grep gateway. Ответ будет выглядеть так:
$ route get default | grep gateway
gateway: 192.168.0.1
Адрес шлюза в этом случае 192.168.0.1
Linux
В Linux есть несколько команд, позволяющих определить свой основной шлюз. Запустите терминал и введите ip route. Ответ, который вы увидите на экране, будет выглядеть следующим образом:
IP-адрес после default будет адресом роутера.
Можно использовать альтернативную команду ip route | grep default. Тогда на экране вы увидите вот такую информацию:
Здесь минимум информации. Сразу видно, что адрес шлюза 192.168.0.1.
Этот метод работает во всех версиях Linux.
Android
На мобильных устройствах под управлением Android шлюз можно найти в настройках подключения к сети.
Откройте меню «Настройки» на вашем смартфоне. Перейдите в раздел Wi-Fi и найдите там ваше подключение к интернету. В зависимости от версии Android нужно нажать на него пальцем и удерживать или коснуться изображения шестерёнки рядом с подключением. Отроются его параметры. Возможно, потребуется нажать ещё ссылку «Изменить сеть». В открывшемся окне для получения подробной информации жмите «Дополнительно». Увидите вот такую картинку:
Здесь всё понятно. Ваш сетевой шлюз 192.168.0.1.
iPhone
На iPhone и iPad получить нужную информацию ещё проще. Войдите в настройки и коснитесь пальцем Wi-Fi. Рядом с названием вашей беспроводной сети вы увидите букву i. Нажмите на неё. На экране появятся сведения о подключении.
Нас интересует строка Router. Цифры, которые вы видите рядом, это и есть ваш шлюз.
Chrome OS
Chrome OS сейчас устанавливается на большое количество устройств. Поэтому разберёмся, как узнать адрес шлюза по умолчанию в этой операционке.
В правом нижнем углу экрана нажмите на область состояния и выберите «Параметры» (Settings).
Выберите беспроводное подключение Wi-Fi или кабельное Ethernet, в зависимости от того, что именно вы сейчас используете. Из выпадающего списка выберите название вашей сети. В открывшемся окне перейдите на вкладку «Сеть» (Network). Здесь отображается информация о состоянии текущего подключения.
В строке Gateway вы увидите IP-адрес вашего роутера, который является искомым шлюзом.
Инструкция по настройке программного роутера в связке iptables + dnsmasq на Debian 11
Рассмотрим настройку роутера (Интернет шлюза) для локальной сети небольшой организации или домашней лаборатории с доступом в Интернет.
Топология виртуальной лабораторной сети
Лабораторный стенд собран в Virtual Box и состоит из:
- SRV-1 – Web сервер
- SRV-2 – Файловый сервер
- РС-1 – ОС Simply Linux
- PC-2 – ОС Astra Linux
Инструкция по созданию лабораторного стенда в Virtual Box
На роутере настроим
- DHCP- сервер;
- DNS – сервер;
- Межсетевой экран;
- NAT.
Установка ОС Debian 11
Развертывание программного роутера производим на ОС Debian 11 (bullseye).
На этапе установки ставим только SSH-сервер и Стандартные системные утилиты. Подробная инструкция по установке ОС Debian 11
Первоначальная настройка Роутера
Обновляем пакеты:
# apt-get update # apt-get upgrade |
Настраиваем часовой пояс, если при установке не установили:
# dpkg-reconfigure tzdata |
Устанавливаем утилиту chrony для автоматического обновления времени:
Устанавливаем сетевое имя – hostname
# hostnamectl set-hostname router.firma.loc |
Конфигурация сетевых интерфейсов
Настройка интерфейсов
Определяем сетевые интерфейсы
или
Файл конфигурации сетевых интерфейсов расположен
/etc/network/interfaces
На роутере– 2 сетевых интерфейса:
·
enp0s3 – внешний интерфейс, подключен к провайдеру, настройки получает по dhcp или настроен вручную.
·
enp0s8 – внутренний интерфейс, смотрит в локальную сеть, статический ip адрес
Настройка внешнего интерфейса
Внешнему интерфейсу
enp0s3 установим статический IP-адрес:
Открываем файл настройки сети
# nano /etc/network/interfaces |
Для этого в конфигурационный файл прописываем следующие параметры, предварительно удалив или закомментировав получение настроек по dhcp :
auto enp0s3 iface enp0s3 inet static address 192.168.2.50 gateway 192.168.2.1 netmask 255.255.255.0 dns—nameservers 77.88.8.8 77.88.8.1 |
где:
auto enp0s3 – запускать указанный интерфейс (enp0s3) при загрузке системы
iface enp0s3 inet static – назначение статического IP адреса для enp0s3
address – статический IP адрес
gateway – шлюз по умолчанию
netmask – маска сети
dns—nameservers – сервера DNS, разделяются пробелами
address, gateway, netmask, dns—nameservers – параметры, выданные провайдером
Настройка внутреннего интерфейса
Добавим в конфигурационный файл следующие строки:
auto enp0s8 iface enp0s8 inet static address 172.16.0.1 netmask 255.255.255.0 |
Перезапускаем сетевые службы
# /etc/init.d/networking restart |
Маршрутизация пакетов между интерфейсами
Включаем маршрутизацию пакетов между сетевыми интерфейсами. Для этого редактируем конфигурационный файл
/etc/sysctl.conf ,
раскомментируем строку
net.ipv4.ip_forward = 1 , либо добавить, если ее нет.
Применяем настройку
Настройка DNS + DHCP
Установка Dnsmasq
В качестве DHCP и DNS сервера используем Dnsmasq.
Удаляем файл
resolv.conf по умолчанию и создаем новый с данными настраиваемого DNS-сервера.
# rm -rf /etc/resolv.conf # echo «nameserver 77.88.8.8» > /etc/resolv.conf |
Устанавливаем Dnsmasq:
# apt-get install dnsmasq |
После установки разрешим автозапуск сервиса Dnsmasq:
# systemctl enable dnsmasq |
Проверяем статус сервиса:
# systemctl status dnsmasq.service |
Настройка DNS
После установки Dnsmasq настраиваем его в качестве локального кэширующего DNS-сервера. Для настройки необходимо отредактировать файл конфигурации Dnsmasq
/etc/dnsmasq.conf .
Создаём копию файла конфигурации:
# cp /etc/dnsmasq.conf /etc/dnsmasq.conf.bak |
Открываем файл конфигурации для редактирования:
Добавляем следующие строки для минимальной настройки DNS:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 |
#Порт, на котором Dnsmasq будет прослушивать DNS-запросы. По умолчанию порт 53 UDP, можно явно указать порт port=53 #Отключаем пересылку имен без точки или доменной части domain—needed #Никогда не пересылать не маршрутизированные адреса bogus—priv #Интерфейс, на котором должны отвечать DNS-сервер и DHCP-сервер interface=enp0s8 #Включаем Dnsmasq для автоматического добавления доменной части к простым именам expand—hosts #Задаем домен для добавления dnsmasq к простым именам domain=firma.loc #Размер кешированных доменных имен. По умолчанию 150. cache—size=1000 #Запрет считывать адреса DNS-серверов с файла resolv.conf no—resolv #Отключение отслеживание изменения файла /etc/resolv.conf или другого файла, выполняющего его функцию no—poll #Адреса верхних DNS-серверов (указываем Yandex DNS) server=77.88.8.8 server=77.88.8.1 #Для защиты от DNS атак запретить ответы от вышестоящих DNS серверов с IP адресами компьютеров локальной сети stop—dns—rebind #Очистка DNS-кэша при перезапуске сервиса clear—on—reload |
Настройки DHCP сервера
Указываем диапазон адресов, выдаваемых DHCP и интерфейс, на котором он будет работать и время аренды.
dhcp—option=1 – выставляем маску подсети,
dhcp—option=3 – выставляем шлюз по умолчанию – эти параметры выдаются вместе с IP адресом.
Добавляем строки в файл конфигурации Dnsmasq
/etc/dnsmasq.conf.
#DHCP pull + параметры локальной сети dhcp—range=enp0s8,172.16.0.10,172.16.0.200,24h dhcp—option=1,255.255.255.0 dhcp—option=3,172.16.0.1 |
Установка статических адресов из DHCP (резервирование)
Можно назначить статические IP-адреса своим узлам локальной сети по MAC-адресу или по имени хоста. Адрес должен попадать в диапазон, который настроен в
dhcp—range=
dhcp—host=xx:xx:xx:xx:xx:xx,172.16.0.10 dhcp—host=xx:xx:xx:xx:xx:xx,172.16.0.20 |
где:
xx:xx:xx:xx:xx:xx – MAC адрес сетевого интерфейса узла
Локальные DNS записи
Добавляем локальные записи DNS в файл
/etc/hosts . Эти записи будут использоваться Dnsmasq. DNS записи прописываем для каждого клиента сети к которым необходимо обращаться по доменным именам.
172.16.0.1 router.firma.loc 172.16.0.4 web.firma.loc 172.16.0.5 file.firma.loc 172.16.0.50 pc1.firma.loc |
Редактирование resolv.conf
Добавляем IP-адрес Dnsmasq в качестве основного DNS-сервера в
/etc/resolv.conf , и конфигурационный файл должен выглядеть следующим образом:
Перезапуск Dnsmasq
Запускаем проверку конфигурации Dnsmasq:
Перезапускаем Dnsmasq:
# systemctl restart dnsmasq |
Перезагружаем роутер
Проверка разрешения DNS
Проверяем разрешения для локального домена:
dig router.firma.loc +short dig web.firma.loc +short dig file.firma.loc +short dig pc1.firma.loc +short |
В результате успешного опроса DNS сервера отобразиться только IP адрес без дополнительных строк
Проверяем разрешение внешнего DNS:
Настройка DNS-сервера на удаленных клиентах
Когда Dnsmasq готов отправлять как локальные, так и внешние запросы DNS через локальный DNS-сервер, обновляем запись DNS для клиентов в
/etc/resolv.conf.
На каждом клиенте необходимо в
/etc/resolv.conf добавить данные локального DNS
# echo «nameserver 172.16.0.1» > /etc/resolv.conf |
Для проверки выполняем локальные запросы DNS на Роутере:
dig router.firma.loc dig web.firma.loc dig file.firma.loc dig pc1.firma.loc |
Настройка маршрутизации, firewall, nat
Установка Iptables в Debian 11
На первом этапе необходимо удалить стандартную платформу
nftables и установить
iptables в Debian 11.
Для установки
iptables сначала нужно удалить
nftables и его зависимости.
# apt-get remove —auto-remove nftables # apt-get purge nftables |
Устанавливаем
Iptaples
# apt-get update # apt-get install iptables |
Проверяем статус iptables и правила списка.
Настройка Iptables
Рассмотрим один из вариантов
Создаем файл скрипта с правилами iptables —
/etc/iptables.sh
И добавляем следующие строки, отредактировав их, заменив переменные WAN и LAN на свои. Сохраняем файл.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 |
#!/bin/bash export IPT=«iptables» # Внешний интерфейс export WAN=enp0s3 export WAN_IP=192.168.2.50 # Локальная сеть export LAN1=enp0s8 export LAN1_IP_RANGE=172.16.0.0/24 # Очищаем правила $IPT —F $IPT —F —t nat $IPT —F —t mangle $IPT —X $IPT —t nat —X $IPT —t mangle —X # Запрещаем все, что не разрешено $IPT —P INPUT DROP $IPT —P OUTPUT DROP $IPT —P FORWARD DROP # Разрешаем localhost и локалку $IPT —A INPUT —i lo —j ACCEPT $IPT —A INPUT —i $LAN1 —j ACCEPT $IPT —A OUTPUT —o lo —j ACCEPT $IPT —A OUTPUT —o $LAN1 —j ACCEPT # Разрешаем пинги $IPT —A INPUT —p icmp —icmp—type echo—reply —j ACCEPT $IPT —A INPUT —p icmp —icmp—type destination—unreachable —j ACCEPT $IPT —A INPUT —p icmp —icmp—type time—exceeded —j ACCEPT $IPT —A INPUT —p icmp —icmp—type echo—request —j ACCEPT # Разрешаем все исходящие подключения сервера $IPT —A OUTPUT —o $WAN —j ACCEPT # Разрешаем все входящие подключения сервера #$IPT -A INPUT -i $WAN -j ACCEPT # разрешаем установленные подключения $IPT —A INPUT —p all —m state —state ESTABLISHED,RELATED —j ACCEPT $IPT —A OUTPUT —p all —m state —state ESTABLISHED,RELATED —j ACCEPT $IPT —A FORWARD —p all —m state —state ESTABLISHED,RELATED —j ACCEPT # Отбрасываем неопознанные пакеты $IPT —A INPUT —m state —state INVALID —j DROP $IPT —A FORWARD —m state —state INVALID —j DROP # Отбрасываем нулевые пакеты $IPT —A INPUT —p tcp —tcp—flags ALL NONE —j DROP # Закрываемся от syn-flood атак $IPT —A INPUT —p tcp ! —syn —m state —state NEW —j DROP $IPT —A OUTPUT —p tcp ! —syn —m state —state NEW —j DROP # Разрешаем доступ из локалки наружу $IPT —A FORWARD —i $LAN1 —o $WAN —j ACCEPT # Закрываем доступ снаружи в локалку $IPT —A FORWARD —i $WAN —o $LAN1 —j REJECT # Включаем NAT $IPT —t nat —A POSTROUTING —o $WAN —s $LAN1_IP_RANGE —j MASQUERADE # открываем доступ к SSH $IPT —A INPUT —i $WAN —p tcp —dport 22 —j ACCEPT # Сохраняем правила /sbin/iptables—save > /etc/iptables.rules |
Делаем файл с правилами, исполняемым:
# chmod 0740 /etc/iptables.sh |
Перед применением новых правил, проверим текущие:
На настраиваемом роутере firewall полностью открыт. Теперь применим новые правила и смотрим на результат:
# /etc/iptables.sh # iptables -L -v -n |
Необходимо сделать так, чтобы новые правила применялись после перезагрузки.
В последней строчке скрипта есть команда:
/sbin/iptables—save > /etc/iptables.rules. С ее помощью готовый набор правил
iptables выгружается в файл. Чтобы правила
Iptables применялись при включении сетевого интерфейса во время загрузки сервера в файл
/etc/network/interfaces необходимо добавить в самый конец строчку:
post—up iptables—restore < /etc/iptables.rules |
Для проверки перезагружаем роутер и проверяем, все ли в порядке. Основная настройка программного роутера на debian завершена.
Всем привет! Сегодня я на простом примере расскажу вам про настройку роутера Cisco (2911, 1841, 881 и другие модели). Я выдумал некую простую схему с примером, которая позволит вам понять, как подключить локальную сеть к интернету через наш маршрутизатор. Я покажу пример настройки через консоль. Но вы можете делать конфигурирование через программу «Cisco Packet Tracer» – видеоинструкцию смотрим в конце статьи.
Содержание
- Пример подключения
- ШАГ 1: Подключение к маршрутизатору
- ШАГ 2: Reset настроек
- ШАГ 3: Конфигурация интерфейсов
- ШАГ 4: Удаленный доступ к роутеру
- ШАГ 5: Настройка шлюза
- ШАГ 6: Настройка NAT
- Видео
- Задать вопрос автору статьи
Пример подключения
Представим себе, что у нас есть один роутер Cisco. С помощью маршрутизатора мы должны подключить офис с несколькими компьютерами. Для коннекта всех локальных машин будем использовать коммутатор. Fa 4 и Fa 0 – это внешний и внутренний физический интерфейс. Также у нас есть:
- 277.146.101.1 – это шлюз провайдера.
- 277.146.101.2 – это внешний IP адрес роутера, его выдает провайдер.
- 192.168.1.1 – это локальный IP адрес.
Я думаю, схема достаточно понятная и простая.
ШАГ 1: Подключение к маршрутизатору
Для подключения мы будем использовать вот такой вот кабель, который обычно идет в комплекте со всем подобным оборудованием.
С одной стороны консольного кабеля должен быть COM-порт (RS 232). Подключаем один конец в CONSOLE (может иметь надпись CON) порты.
Вы можете столкнуться с проблемой, что у современных компов и ноутов нет подобного входа. Поэтому можно использовать USB переходник.
После подключения скачиваем программку PuTTY – она бесплатная и достаточно удобная. Очень важный момент – в разделе «Connection type» после запуска установите значение «Serial».
И далее нажимаем по кнопке «Open». Если у вас возникли трудности и подключение не происходит, то проверьте в «Диспетчере устройств», какой COM порт используется. Может быть баг, что порт указан не тот. Особенно этот баг проявляется при использовании переходника USB-COM.
Далее вы должны увидеть приветственную надпись в запрос ввода логина и пароля.
ШАГ 2: Reset настроек
Итак, в первую очередь нам нужно полностью очистить старые настройки – они нам ни к чему, все будем делать с нуля (так сказать). Изначально вы увидите вот такую надпись:
router>
Но нам нужно запустить роутер с правами администратора, чтобы вместо стрелочки стояла решетка (#). Для этого вводим команду:
router> enable
Теперь сначала удаляем старый конфиг, а потом ребутаем аппарат:
router# write erase
router# reload
Нужно будет немного подождать. После этого роутер загрузится и выведет сообщение – использовать стандартную конфигурацию? – отвечаем:
no
ШАГ 3: Конфигурация интерфейсов
В первую очередь давайте назовем наше устройство для удобства обращения через команду. Я назвал его: «WIFIGID-ROUTER» – смотрим на картинку. Вообще, если у вас будут возникать какие-то вопросы по командам, то смотрите на схему в начале статьи. Итак, обзываем наш роутер:
router#conf t
router (config)#hostname WIFIGID-ROUTER
После этого вместо «router» вы должны увидеть свое название. Вспомним, что у роутера есть два интерфейса,
Внутренний (связь с локальной сетью) – с адресацией:
192.168.1.0/24
Внешний (связь с глобальным интернетом) – понятное дело, что у нас тут будут статические настройки:
- Сеть провайдера: 277.146.101.0
- Маска: 255.255.255.252 (/30)
- Шлюз: 277.146.101.1
Я придумал все эти значения, просто чтобы показать настройку – вы же подставляйте свои циферки. Маршрутизатор будет выступать шлюзом, и наша задача связать две эти сети и дать клиентам доступ в интернет.
Давайте введем настройки внешнего статического адреса:
WIFIGID-ROUTER #conf t
WIFIGID-ROUTER (config)#
interface Fa 4
ip address 227.146.101.2 255.255.255.252
no shutdown
Для подключения к интернету мы используем четвёртый интерфейс. Выше я задал внешний IP как 227.146.101.2, после этого прописал маску и запустил настройку последней командой. Ах да, не забудьте подключить интернет кабель от провайдера. В качестве проверки пингуем сначала сам роутер:
WIFIGID-ROUTER #ping 227.146.101.2
А потом шлюз провайдера:
WIFIGID-ROUTER #ping 227.146.101.1
Если все хорошо, и оба устройства пингуются, идем настраивать интерфейс для связи с локальной сетью. Локальная сеть у нас будет с адресацией:
192.168.1.0
Локальный адрес роутера:
192.168.1.1
Маска стандартная:
255.255.255.0
И еще один совет – обязательно оставьте пару адресов про запас. То есть диапазон адресов будет примерно от 192.168.1.2 до 192.168.1.10. Остальные уже будут использоваться клиентами и другими устройствами в локалке.
Локальный адрес роутера мы будем прописывать в VLAN:
R-DELTACONFIG#conf t
interface Vlan 1
Ip address 192.168.2.1 255.255.255.0
no shutdown
interface Fa 0
switchport access vlan 1
no shutdown
А для подключения будем использовать интерфейс «Fa 0». Что мы сделали, мы привязали сначала локальный адрес к Vlan. А потом уже VLAN привязали к физическому интерфейсу. Подключаем к этому физическому интерфейсу наш коммутатор, к которому уже будут подключены все рабочие машины, принтеры и другие сетевые устройства.
ШАГ 4: Удаленный доступ к роутеру
Чтобы вам постоянно не сидеть рядом с роутером и подключенным к нему консольным кабелем, я вам советую сразу настроить удалённый доступ. Мы будем использовать подключение по защищенному каналу SSH (второй версии).
WIFIGID-ROUTER (config)#
ip ssh ver 2
ip domain-name wifigid-router-c.ru
Сначала мы запустили SSH-2, а потом прописали произвольный домен. Теперь создаем ключ с помощью команды.
crypto key generate rsa
Далее вылезет вот такая вот надпись:
Вписываем число:
1024
Создаем пользователя с правами админа и паролем. Вместо «password» введите свой пароль.
username admin privilege 15 secret 0 password
Включаем пользователя в базу устройства:
line vty 0 4
login local
И задаем пароль для режима доступа:
enable secret 0 password-2
Опять же вместо «password-2» вводим свой пароль. После этого вы можете использовать любую программу с поддержкой SSH для доступа из локальной сети к этому роутеру.
ШАГ 5: Настройка шлюза
Теперь нам нужно подключиться к шлюзу провайдера:
WIFIGID-ROUTER (config)#
ip route 0.0.0.0 0.0.0.0 227.146.101.1
После этого пингуем любой внешний сайт, но лучше использовать именно IP, а не DNS адрес. Можно даже пропинговать один из DNS-серверов.
WIFIGID-ROUTER#ping 8.8.8.8
ШАГ 6: Настройка NAT
Опять же локальные компьютеры пользователя пока не имеют доступа в интернет, но мы это исправим. Для этого нам нужно настроить динамическую трансляцию локальных IP во внешний. У нас всего один внешний адрес, поэтому локальные адреса должны превращаться в него, проходя через наш роутер, выполняющий роль шлюза.
Прописываем диапазон тех адресов, которые в теории могут использоваться локальными машинами:
WIFIGID-ROUTER (config)#
ip access-list standard ACL_NAT
permit 192.168.1.0 0.0.0.255
Далее указываем наш VLAN:
Interface Vlan 1
ip nat inside
Они будет неким локальным интерфейсом, ведь в VLAN может быть сразу несколько адресов. Теперь указываем физический внешний интерфейс, к которому мы подключили провайдерский кабель:
Interface Fa 4
ip nat outside
А теперь мы создаем NAT правило:
ip nat inside source list WIFIGID_NAT interface fa4
Далее мы уже можем из локальной сети с любого компа клиента пинговать любые интернет-адреса. Также в качестве пробы используем внешний IP адрес. Ну и в самом конце не забудьте сохранить конфиг в память роутера:
WIFIGID-ROUTER#write
Видео
В идеале вы должны использовать только один роутер в своей домашней сети. Но иногда выбора нет, например, когда вам нужно сохранить шлюз, предоставленный интернет-провайдером, но при этом вы хотите расширить или обновить свою систему.
Шлюз – это единый аппаратный блок, содержащий роутер Wi-Fi и модем (или интернет-приемник любого типа, если на то пошло) внутри. Тем не менее, в этой статье шлюз – это, прежде всего, роутер.
Этот пост поможет вам получить нужную домашнюю сеть, даже если вы не можете или не хотите заменять существующий роутер. По сути, эта часть касается размещения роутера (или ячеистой системы) поверх другого. То есть, это вопрос одиночного NAT против двойного NAT.
Но, в зависимости от вашей ситуации вам может потребоваться сделать что-то столь же простое, как максимально использовать возможности шлюза, установить точку доступа или «удлинитель Wi-Fi».
Как правильно настроить шлюз, предоставляемый провайдером
Если вы живёте в небольшом доме, скорее всего, роутер, который у вас есть под рукой, это шлюз, установленный вашим интернет-провайдером, и этого достаточно для ваших потребностей в Wi-Fi.
Если вы решите использовать его вместо того, чтобы приобретать собственное оборудование, вам следует подумать о том, чтобы извлечь из него максимальную пользу.
Дополнительно: преимущества шлюза, предоставляемого провайдером
Хотя очевидно, что лучше всего использовать своё оборудование, использование шлюза, предоставляемого вашим интернет-провайдером, даёт некоторые преимущества.
Вот несколько примеров:
- Простота использования: Вам не нужно ничего делать. Провайдер настроит для вас работу домашней сети и будет управлять оборудованием, включая обновление прошивки, устранение неполадок и т.д.
- Меньше беспорядка: у вас будет только один аппаратный блок вместо двух.
- Беспроблемная замена оборудования: если шлюз выйдет из строя, позвоните провайдеру, и вы быстро получите замену – и всё это бесплатно. Провайдер также модернизирует оборудование, когда это необходимо.
- Простое управление: у некоторых провайдеров вы можете управлять некоторыми аспектами своей домашней сети, например, изменять пароль Wi-Fi, через свою учетную запись в Интернете. (Это если вы согласны с потенциальными рисками для конфиденциальности.)
- Неограниченный лимит данных: некоторые провайдеры снижают стоимость неограниченного лимита на трафик при использовании их шлюза.
Короче говоря, использование оборудования, проверенного провайдером, не так уж и плохо. Некоторых преимуществ достаточно, чтобы оправдать ежемесячную «арендную» плату.
В этом случае есть несколько вещей, которые вы должны сделать. Кстати, управлять шлюзом можно так же, как и обычным Wi-Fi роутером.
-
Изменить доступ по умолчанию к шлюзу
Все шлюзы, предоставляемые провайдерами, имеют стандартные данные для доступа администратора. Любой, кто знает это, может войти в его интерфейс, будучи частью сети. В целях безопасности вы должны изменить пароль на что-то другое.
Для этого войдите в веб-интерфейс шлюза, указав в браузере его IP-адрес, и войдите с паролем по умолчанию (или кодом доступа). Обычно вы можете найти эту информацию на боковой или нижней панели устройства.
После того, как вы вошли в систему, перейдите в интерфейс к области, где вы можете изменить пароль и создайте новый, более безопасный.
-
Создайте осмысленную сеть Wi-Fi
По умолчанию каждый шлюз поддерживает стандартную сеть Wi-Fi, название и пароль которой трудно запомнить или ввести, особенно когда вам нужно сделать это на маленьком экране или с помощью пульта дистанционного управления.
Вы можете присвоить своей сети Wi-Fi персонализированное имя и пароль, которые сможете запомнить.
Кстати, вы можете использовать своё имя в качестве SSID (имени сети), но если вы хотите остаться анонимным, выбирайте что угодно по своему вкусу. Это имя будет отображаться как доступная сеть Wi-Fi на мобильном устройстве.
Опять же, вы можете сделать это через веб-интерфейс и следовать этим рекомендациям в отношении паролей, чтобы обеспечить безопасность вашей системы.
-
Настройте свой шлюз
Эта часть необязательна, но большинство шлюзов имеют приличный набор функций и настроек, которые вы можете использовать – количество варьируется от одного устройства к другому.
Примеры включают переадресацию портов, динамический DNS, разделение сетей 2,4 ГГц и 5 ГГц и т.д. Опять же, вы можете использовать интерфейс для их настройки.
Короче говоря, то, что вы не используете стандартный готовый роутер, не означает, что вы не можете создать свою сеть с определенными расширенными настройками. Покопайтесь в веб-интерфейсе вашего шлюза; вы можете быть удивлены тем, как много вы можете получить от этого.
Использование повторителя или точки доступа
Если вы живёте в большом доме и существующий шлюз не покрывает вайфаем весь дом, самое время подумать о приобретении дополнительного оборудования для улучшения покрытия.
В этом случае вам понадобится либо точка доступа (AP), либо расширитель Wi-Fi.
Множество ролей домашнего Wi-Fi роутера
Вот что вы могли не знать. Ваш домашний Wi-Fi-роутер может функционировать не только как маршрутизатор, что является его ролью по умолчанию.
Ниже приводится разбивка четырёх типичных ролей. Не каждый роутер поддерживает всё это, но у большинства будет хотя бы первый плюс ещё один.
Некоторые роутеры имеют даже больше ролей – например, маршрутизаторы Asus также имеют проприетарную роль узла AiMesh.
Вот рабочие роли, доступные в роутере Asus. Обратите внимание на точку доступа и медиа-мост, название которых может быть другим в маршрутизаторах разных производителей.
- Беспроводной маршрутизатор
Эта роль используется по умолчанию – оборудование будет работать как таковое, если вы не измените его активно.
Аппаратное обеспечение работает как роутер Wi-Fi, который получает подключение к Интернету, а затем распределяет его по остальной части сети через проводные и Wi-Fi-соединения.
В этой роли вы должны использовать порт WAN маршрутизатора в качестве источника Интернета. Это также единственная роль, в которой доступны функции маршрутизации и сетевые функции (QoS, родительский контроль, динамический DNS, сервер VPN, переадресация портов и т.д.).
По сути, аппаратное обеспечение теперь представляет собой стандартный роутер со встроенной точкой доступа Wi-Fi.
- Точка доступа (AP)
Важное примечание. Некоторые поставщики называют эту роль «мост».
В этом режиме оборудование работает как точка доступа. Он подключается к существующему роутеру через сетевой кабель и расширяет сеть, как проводную, так и беспроводную.
В этой роли ни маршрутизация, ни функции недоступны. Все сетевые порты устройства работают как порты LAN. По сути, роутер теперь представляет собой сетевой коммутатор со встроенным вещателем Wi-Fi.
Кстати, если у вас есть роутер Wi-Fi 6 с портом Multi-Gig WAN, использование его в качестве точки доступа – единственный способ локально воспользоваться преимуществами высокой скорости этого порта – без подключения к Интернету Gig+, то есть – при условии, что у вас есть коммутатор Multi-Gig.
- Расширитель Wi-Fi
Теперь роутер работает как расширитель Wi-Fi.
В частности, вы используете одну из его полос (2,4 ГГц, 5 ГГц или 6 ГГц) для подключения к существующей сети Wi-Fi – это полоса обратной связи. После этого вы можете настроить один или все его диапазоны (включая транзитный диапазон) с отдельными SSID для обслуживания клиентов.
В этом режиме все сетевые порты роутера будут работать как LAN-порты существующей сети.
- Мост или медиа-мост
Важное примечание. Некоторые поставщики – те, которые используют «Мост» для обозначения роли «Точка доступа», как упоминалось выше, – называют этот режим «Беспроводной мост». Для этой роли могут быть другие произвольные имена.
В этом режиме роутер работает как адаптер Wi-Fi-Ethernet.
В частности, вы используете один из его диапазонов для подключения к существующей сети Wi-Fi. Теперь вы можете подключать проводные устройства к LAN-портам роутера, чтобы сделать их частью сети. (В большинстве случаев следует оставить порт WAN в покое, но некоторые роутеры превращают этот порт в другую локальную сеть.)
В режиме Media Bridge остальные диапазоны Wi-Fi роутера недоступны.
Когда использовать точку доступа
Включите точку доступа, если вы можете проложить длинный сетевой кабель (или набор адаптеров Power-Line) от шлюза к ней. Использование точки доступа было бы моим первым выбором, поскольку она обеспечивает гораздо лучшую производительность, чем расширитель.
Существует множество вариантов точек доступа, и большинство из них работают одинаково. Убедитесь, что вы используете один из тех же или лучших стандартов Wi-Fi, что и шлюз.
Также обратите внимание, что большинство роутеров могут работать в режиме AP. Так что если у вас старый роутер, вы тоже можете его использовать – подробнее об этом ниже.
Вы можете создать сеть Wi-Fi (SSID) точки доступа с тем же именем и паролем, что и у существующего маршрутизатора. В большинстве случаев это даст вам что-то вроде меш-системы.
Когда нужен расширитель
Расширитель, как следует из названия, может быстро расширить ваш Wi-Fi без необходимости прокладывать сетевой кабель.
Не все расширители одинаковы. Я бы порекомендовал трёхдиапазонный, поскольку он использует один из своих диапазонов в качестве выделенного канала связи с существующим роутером. Вы получите лучшую скорость Wi-Fi, чем с двухдиапазонным аналогом.
Обратите внимание, однако, что использование расширителей означает, что вы получаете удобство за счёт производительности. Иногда производительность становится настолько плохой, что удобство даже не стоит того. Также иногда возникает проблема с виртуальным MAC-адресом.
Как правило, если у вас быстрый Интернет или вы хотите использовать Интернет для приложений связи в реальном времени, таких как передача голоса по IP или видеоконференцсвязь, расширитель не подойдёт. Вам нужно будет проложить сетевые кабели или, по крайней мере, получить ячеистую систему.
Установка роутера поверх другого: двойной NAT или одиночный NAT
В этой части вы получаете новый роутер Wi-Fi (или ячеистую систему) и используете существующий шлюз, как если бы он был модемом.
Часть настройки оборудования проста: подключите порт WAN (Интернет) нового роутера – или основного роутера вашей сетки – к порту LAN шлюза (или существующего роутера). Теперь настройте новый роутер по своему вкусу, и всё готово.
Но это легче сказать, чем сделать. Есть несколько вещей, о которых следует помнить.
Разный локальный IP-адрес для каждого роутера
Локальный IP-адрес вашего нового роутера должен отличаться от адреса существующего шлюза. (Этот адрес часто отображается как «IP-адрес шлюза по умолчанию», но это всего лишь соглашение об именах, не связанное с фактическим шлюзом).
Довольно редко вам всё же придётся побеспокоиться об этом. Это потому, что есть вероятность, что они уже отличаются по умолчанию. Многие роутеры достаточно умны, чтобы автоматически менять свой IP-адрес при подключении к другому роутеру (или шлюзу), который уже использует тот же самый.
Если они используют один и тот же IP-адрес – что обычно происходит, если новый и существующий роутеры принадлежат одному и тому же производителю – вы заметите, что устройства, подключенные к новому роутеру, не будут иметь доступа к Интернету. Могут быть и другие проблемы.
В любом случае, вы всегда можете изменить IP роутера с помощью веб-интерфейса. Он находится в области «Локальная сеть» (или DHCP) интерфейса маршрутизатора. Этот IP-адрес имеет тенденцию быть 192.168.x.1 или 10.0.x.1 – замените x на другую цифру.
После этого у вас будет один из двух вариантов: двойной NAT или одиночный NAT.
Что такое NAT
NAT означает network address translation (преобразователь сетевых адресов), что является важной функцией роутера.
В двух словах, NAT позволяет роутеру использовать один IP-адрес WAN (предоставленный провайдером) для предоставления доступа в Интернет многим подключенным устройствам путём создания для них отдельного набора локальных IP-адресов.
Тем не менее, каждой сети нужен только один роутер, и по умолчанию роутер всегда имеет включенный NAT. С отключенным NAT роутер похож на коммутатор или точку доступа (если в него встроен Wi-Fi).
Двойной NAT
Двойной NAT – это когда вы подключаете один роутер к другому и позволяете им обоим работать как маршрутизаторы.
Поскольку шлюз сам по себе является роутером (плюс модем), вы получите двойную настройку NAT при подключении к нему другого роутера. В частности, у вас есть один роутер с поддержкой NAT, работающий поверх другого, который также поддерживает NAT.
Проблемы с двойным NAT
Основная проблема с двойным NAT заключается в том, что устройства, принадлежащие каждому NAT, не будут взаимодействовать локально. Это потому, что каждый роутер имеет свой собственный набор IP-адресов.
Например, если у вас есть компьютер, подключенный к сети шлюза, и принтер, подключенный к сети нового роутера, компьютер не сможет печатать на принтере. Эти двое «не видят» друг друга. У вас также будут проблемы с другими локальными службами, такими как обмен данными, потоковая передача мультимедиа, резервное копирование по сети и т.д.
Более того, расширенные сетевые настройки, такие как VPN, переадресация портов и т.д., не будут работать должным образом, если вообще будут работать.
Советы по использованию двойного NAT:
- Вы всё ещё можете использовать переадресацию портов, но это потребует больше усилий. В частности, вам нужно запрограммировать это дважды: сначала открыть соответствующий порт на шлюзе (нижний NAT) для IP-адреса роутера, а затем на роутере (верхний NAT) для IP-адреса целевого устройства.
- Чтобы получить доступ к интерфейсу роутера NAT верхнего уровня через Интернет, настройте запись переадресации портов сервера на NAT первого уровня (шлюз) – убедитесь, что они используют разные порты для удаленного управления.
- Устройство верхнего уровня NAT по-прежнему может получить доступ к другому устройству нижнего уровня NAT, если вы используете первый IP-адрес (вместо его имени). Сделать наоборот гораздо сложнее, если вообще возможно.
Когда работает двойной NAT
Если всё, что вам нужно, это доступ к Интернету, то двойная настройка NAT вполне подойдёт.
Кроме того, двойная настройка NAT делает сеть NAT верхнего уровня – ту, которой управляет ваш новый роутер, – более безопасной. Это связано с тем, что устройства в этой сети защищены двумя уровнями брандмауэров и NAT. Они также невидимы для тех, кто подключается к NAT более низкого уровня, как упоминалось выше.
Что делать при настройке двойного NAT
Теперь, когда вы знаете о двойном NAT и всё ещё хотите его использовать, вам нужно сделать всего одну вещь: отключить Wi-Fi на первом роутере/шлюзе (вы можете сделать это через его веб-интерфейс) и использовать только Wi-Fi вашего роутера верхнего уровня.
В качестве альтернативы вы можете оставить сеть Wi-Fi шлюза в качестве гостевой сети. В этом случае убедитесь, что она имеет другое имя Wi-Fi (SSID), отличное от того, которое вы используете для себя.
Теперь подключите все проводные устройства к роутеру верхнего уровня (а не к шлюзу), чтобы они могли локально видеть друг друга. Тогда миссия выполнена.
Одиночный NAT
Как упоминалось выше, если вы хотите использовать расширенные сетевые функции и все устройства в вашем доме, чтобы легко общаться друг с другом, лучше всего использовать единую конфигурацию NAT. В этой стандартной настройке ваш роутер подключается напрямую к Интернету.
В этом случае у вас есть два варианта. Либо вы заставляете шлюз перенаправлять IP-адрес WAN на ваш роутер, заставляя его работать как модем. Или вы можете превратить свой новый роутер в точку доступа, которая работает исключительно как коммутатор и вещатель Wi-Fi.
Переадресация IP-адресов WAN от шлюза к роутеру
В зависимости от используемого вами шлюза конфигурация для этого различается. Для некоторых, таких как кабельные шлюзы, вам необходимо перевести шлюз в режим моста. С другими, такими как шлюзы DSL, вам необходимо настроить сквозную передачу IP и сопоставить её с локальным IP-адресом роутера.
Опять же, цель состоит в том, чтобы заставить ваш роутер взять на себя IP-адрес WAN, а не локальный (частный) IP-адрес шлюза. Другими словами, шлюз снова работает как модем.
Другой вариант – использовать настройку DMZ шлюза, если это применимо, чтобы позволить роутеру верхнего уровня получить нефильтрованный доступ в Интернет. Этот метод отличается от передачи IP-адреса WAN, но он позволяет работать определенным службам/приложениям.
Превратите ваш новый роутер в точку доступа
Большинство роутеров и Wi-Fi систем могут работать как точки доступа (AP) – переключить режим можно через веб-интерфейс.
Кстати, во многих роутерах и ячеистых системах этот режим точки доступа называется «мост», что немного сбивает с толку.
В режиме AP ваш роутер (или ячеистая система) расширяет существующий шлюз/роутер и позволяет вам иметь единую настройку NAT.
Но, в целом, если вы видите роутер с тремя ролями: маршрутизатор, мост и точка доступа, выберите режим точки доступа. Если вы видите только первые два, режим моста, скорее всего, является режимом точки доступа.
Если ваш роутер не имеет режима AP, вы можете вручную перевести его в режим AP, подключив его к шлюзу, используя один из его портов LAN (а не порт WAN – оставьте этот порт в покое).
Примечание. Вы должны настроить сеть Wi-Fi роутера перед тем, как превратить его в точку доступа. Это потому, что после этого немного сложно получить доступ к его веб-интерфейсу.
Маршрутизатор – или ячеистая система – будет работать только для расширения сети и ничего больше в режиме AP. Вы не сможете воспользоваться другими его настройками и функциями. Другими словами, ваша сеть имеет только функции и настройки существующего шлюза (или роутера).
Независимо от вашей ситуации с Интернетом, скорее всего, вы всё ещё можете настроить свою домашнюю сеть по своему вкусу. Это просто требует немного работы.
По моему опыту, необходимость сохранения шлюза, предоставленного провайдером, является наиболее распространенной ситуацией, поэтому приведенный выше раздел о переадресации IP-адресов WAN шлюз-роутера, вероятно, наиболее применим к вашей ситуации. Это также относится к большинству, если не ко всем интернет-планам для малого бизнеса.
Небольшой эксперимент создания интернет-шлюза на Ubuntu Server. У меня дома компьютер с установленной Windows 10 и VirtualBox. Давайте создадим четыре виртуальные машины router
, pc-1
, pc-2
и server
. Все виртуальные машины находятся в одной сети 192.168.30.0/24
. При этом у виртуальной машины router
два сетевых интерфейса:
enp0s3
(сетевой мост) — смотрит в домашнюю сеть, получает ip-адрес192.168.110.8
от роутераenp0s8
(внутренняя сеть) — смотрит в одну сеть с виртуальными машинамиpc-1
,pc-2
иserver
Тут надо сказать несколько слов о настройке сети в VirtualBox. Существует несколько способов, рассмотрим два из них:
- Сетевой мост — при таком подключении виртуальная машина становится полноценным членом локальной сети, к которой подключена основная система. Виртуальная машина получает адрес у роутера и становится доступна для других устройств, как и основной компьютер, по своему ip-адресу.
- Внутренняя сеть — тип подключения симулирует закрытую сеть, доступную только для входящих в ее состав машин. Поскольку виртуальные машины не имеет прямого доступа к физическому сетевому адаптеру основной системы, то сеть получается полностью закрытой, снаружи и изнутри.
Как нетрудно догадаться, у виртуальных машин pc-1
, pc-2
и server
будет по одному интерфейсу (внутренняя сеть). У виртуальной машины router
два интерфейса и она будет обеспечивать выход в интернет для pc-1
, pc-2
и server
.
Настройка сети для router
Сначала нужно посмотреть, как называются сетевые интерфейсы в системе:
$ ls /sys/class/net enp0s3 enp0s8 lo
Теперь редактируем файл /etc/netplan/01-netcfg.yaml
$ sudo nano /etc/netplan/01-netcfg.yaml
# This file describes the network interfaces available on your system # For more information, see netplan(5). network: version: 2 renderer: networkd ethernets: enp0s3: dhcp4: yes enp0s8: dhcp4: no addresses: [192.168.30.1/24] nameservers: addresses: [8.8.8.8, 8.8.4.4]
Применяем настройки и смотрим сетевые интерфейсы:
$ sudo netplan apply # применить настройки из YAML-файла к работающей системе $ sudo netplan generate # сохранить текущие настройки в файл конфигурации networkd
$ ip addr 1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000 link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00 inet 127.0.0.1/8 scope host lo valid_lft forever preferred_lft forever inet6 ::1/128 scope host valid_lft forever preferred_lft forever 2: enp0s3: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc fq_codel state UP group default qlen 1000 link/ether 08:00:27:10:c6:da brd ff:ff:ff:ff:ff:ff inet 192.168.110.8/24 brd 192.168.110.255 scope global dynamic enp0s3 valid_lft 18333sec preferred_lft 18333sec inet6 fe80::a00:27ff:fe10:c6da/64 scope link valid_lft forever preferred_lft forever 3: enp0s8: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc fq_codel state UP group default qlen 1000 link/ether 08:00:27:4e:0e:a0 brd ff:ff:ff:ff:ff:ff inet 192.168.30.1/24 brd 192.168.30.255 scope global enp0s8 valid_lft forever preferred_lft forever inet6 fe80::a00:27ff:fe4e:ea0/64 scope link valid_lft forever preferred_lft forever
Первый сетевой интерфейс enp0s3
получил ip-адрес 192.168.110.8
от домашнего роутера (этот адрес закреплен постоянно для router
). Второму сетевому интерфейсу enp0s8
мы назначили ip-адрес 192.168.30.1
.
Настройка сети для pc-1, pc-2 и server
Сначала для виртуальной машины pc-1
. Смотрим, как называются сетевые интерфейсы в системе:
$ ls /sys/class/net enp0s3 lo
Открываем на редактирование файл /etc/netplan/01-netcfg.yaml
:
$ sudo nano /etc/netplan/01-netcfg.yaml
# This file describes the network interfaces available on your system # For more information, see netplan(5). network: version: 2 renderer: networkd ethernets: enp0s3: dhcp4: no addresses: [192.168.30.2/24] gateway4: 192.168.30.1 nameservers: addresses: [8.8.8.8, 8.8.4.4]
Применяем настройки и смотрим сетевые интерфейсы:
$ sudo netplan apply # применить настройки из YAML-файла к работающей системе $ sudo netplan generate # сохранить текущие настройки в файл конфигурации networkd
$ ip addr 1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000 link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00 inet 127.0.0.1/8 scope host lo valid_lft forever preferred_lft forever inet6 ::1/128 scope host valid_lft forever preferred_lft forever 2: enp0s3: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc fq_codel state UP group default qlen 1000 link/ether 08:00:27:28:be:b7 brd ff:ff:ff:ff:ff:ff inet 192.168.30.2/24 brd 192.168.30.255 scope global enp0s3 valid_lft forever preferred_lft forever inet6 fe80::a00:27ff:fe28:beb7/64 scope link valid_lft forever preferred_lft forever
Для виртуальных машин pc-2
и server
все будет аналогично, так что не буду описывать подробно. Для примера — виртуальной машине pc-2
мы назначили ip-адрес 192.168.30.3/24
:
$ ip addr 1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000 link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00 inet 127.0.0.1/8 scope host lo valid_lft forever preferred_lft forever inet6 ::1/128 scope host valid_lft forever preferred_lft forever 2: enp0s3: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc fq_codel state UP group default qlen 1000 link/ether 08:00:27:28:b0:4b brd ff:ff:ff:ff:ff:ff inet 192.168.30.3/24 brd 192.168.30.255 scope global enp0s3 valid_lft forever preferred_lft forever inet6 fe80::a00:27ff:fe28:b04b/64 scope link valid_lft forever preferred_lft forever
Настройка интернет-шлюза
Виртуальная машина router
должна обеспечивать выход в интернет для всех компьютеров из локальной сети 192.168.30.0/24
. По умолчанию транзитный трафик отключен, так что редактируем файл /etc/sysctl.conf
:
$ sudo nano /etc/sysctl.conf
net.ipv4.ip_forward=1
Чтобы внесенные изменения вступили в силу:
$ sudo sysctl -p /etc/sysctl.conf net.ipv4.ip_forward = 1
После этого настраиваем netfilter
с помощью утилиты iptables
:
$ sudo iptables -P FORWARD DROP
$ sudo iptables -A FORWARD -i enp0s8 -o enp0s3 -s 192.168.30.0/24 -j ACCEPT $ sudo iptables -A FORWARD -i enp0s3 -o enp0s8 -d 192.168.30.0/24 -j ACCEPT
И смотрим, что получилось:
$ sudo iptables -L -v --line-numbers Chain INPUT (policy ACCEPT 781 packets, 4517K bytes) num pkts bytes target prot opt in out source destination Chain FORWARD (policy DROP 0 packets, 0 bytes) num pkts bytes target prot opt in out source destination 1 57 4213 ACCEPT all -- enp0s8 enp0s3 192.168.30.0/24 anywhere 2 52 87384 ACCEPT all -- enp0s3 enp0s8 anywhere 192.168.30.0/24 Chain OUTPUT (policy ACCEPT 639 packets, 49312 bytes) num pkts bytes target prot opt in out source destination
Мы разрешили ходить транзитным пакетам для нашего диапазона ip-адресов, а всё остальное запретили. Теперь настроим SNAT (подмена адреса источника), что позволит всем компьютерам сети выходить в интернет, используя единственный ip-адрес 192.168.110.8
.
$ sudo iptables -t nat -A POSTROUTING -s 192.168.30.0/24 -o enp0s3 -j SNAT --to-source 192.168.110.8
И смотрим, что получилось:
$ sudo iptables -t nat -L -v --line-numbers Chain PREROUTING (policy ACCEPT 27 packets, 3020 bytes) num pkts bytes target prot opt in out source destination Chain INPUT (policy ACCEPT 11 packets, 1416 bytes) num pkts bytes target prot opt in out source destination Chain OUTPUT (policy ACCEPT 71 packets, 5632 bytes) num pkts bytes target prot opt in out source destination Chain POSTROUTING (policy ACCEPT 71 packets, 5632 bytes) num pkts bytes target prot opt in out source destination 1 4 240 SNAT all -- any enp0s3 192.168.30.0/24 anywhere to:192.168.110.8
Теперь проверяем наличие интернета на виртуальных машинах pc-1
, pc-2
и server
:
$ host ya.ru ya.ru has address 87.250.250.242 ya.ru has IPv6 address 2a02:6b8::2:242 ya.ru mail is handled by 10 mx.yandex.ru.
Доступ внутрь сети
Давайте теперь посмотрим, как получить доступ извне к компьютеру внутри сети 192.168.30.0/24
. Установим на виртуальную машину server
SSH-сервер:
$ sudo apt install openssh-server
А на виртуальной машине router
будем отбирать tcp-пакеты, которые приходят на интерфейс enp0s3
на порт 2222 и отправлять эти пакеты виртуальной машине server
на порт 22, заменяя в пакетах пункт назначения на 192.168.30.254
:
$ sudo iptables -t nat -A PREROUTING -i enp0s3 -p tcp --dport 2222 -j DNAT --to-destination 192.168.30.254:22
Смотрим, что получилось:
$ sudo iptables -t nat -L -v --line-numbers Chain PREROUTING (policy ACCEPT 27 packets, 3020 bytes) num pkts bytes target prot opt in out source destination 1 0 0 DNAT tcp -- enp0s3 any anywhere anywhere tcp dpt:2222 to:192.168.30.254:22 Chain INPUT (policy ACCEPT 11 packets, 1416 bytes) num pkts bytes target prot opt in out source destination Chain OUTPUT (policy ACCEPT 71 packets, 5632 bytes) num pkts bytes target prot opt in out source destination Chain POSTROUTING (policy ACCEPT 71 packets, 5632 bytes) num pkts bytes target prot opt in out source destination 1 4 240 SNAT all -- any enp0s3 192.168.30.0/24 anywhere to:192.168.110.8
Теперь попробуем с физического компьютера установить ssh-соединение с виртуальной машиной server
. Открываем PowerShell и выполняем команду:
> ssh -p 2222 evgeniy@192.168.110.8 The authenticity of host '[192.168.110.8]:2222 ([192.168.110.8]:2222)' can't be established. ECDSA key fingerprint is SHA256:c3C3sagcS9j1ObcH6NI+6zFkyV6yyGTc64ASKRLhB0g. Are you sure you want to continue connecting (yes/no)? yes Warning: Permanently added '[192.168.110.8]:2222' (ECDSA) to the list of known hosts. evgeniy@192.168.110.8's password: пароль Welcome to Ubuntu 18.04.3 LTS (GNU/Linux 4.15.0-74-generic x86_64)
Мы в команде указываем порт 2222 и ip-адрес виртуальной машины router
— 192.168.110.8
, которая находится в одной сети 192.168.110.0/24
с физическим компьютером. А виртуальная машина router
пробрасывает это соединение с интерфейса enp0s3
на интерфейс enp0s8
и дальше — виртуальной машине server
, но уже на порт 22.
Сохранение правил netfilter
Созданные с помощью утилиты iptables
правила пропадут при перезагрузке. Так что их нужно сохранить и восстанавливать при перезагрузке. В этом нам поможет пакет iptables-persistent
:
$ sudo apt install iptables-persistent
При установке пакета будет предложено сохранить текущие правила iptables
:
- в файл
/etc/iptables/rules.v4
для протокола IPv4 - в файл
/etc/iptables/rules.v6
для протокола IPv6
После установки пакета будет добавлена новая служба netfilter-persistent.service
, которая при загрузке системы будет восстанавливать созданные нами правила:
$ systemctl status netfilter-persistent.service ● netfilter-persistent.service - netfilter persistent configuration Loaded: loaded (/lib/systemd/system/netfilter-persistent.service; enabled; vendor preset: enabled) Active: active (exited) since Sat 2020-02-22 11:20:44 MSK; 2h 32min ago Process: 446 ExecStart=/usr/sbin/netfilter-persistent start (code=exited, status=0/SUCCESS) Main PID: 446 (code=exited, status=0/SUCCESS) фев 22 11:20:43 router systemd[1]: Starting netfilter persistent configuration... фев 22 11:20:44 router systemd[1]: Started netfilter persistent configuration.
При добавлении новых правил, надо сохранить конфигурацию с помощью команды
$ sudo iptables-save > /etc/iptables/rules.v4
Восстановить ранее сохраненную конфигурацию можно с помощью команды
$ sudo iptables-restore < /etc/iptables/rules.v4
Поиск:
Linux • SSH • Ubuntu • Конфигурация • Настройка • Сервер • VirtualBox • Виртуальная машина • Маршрутизатор • iptables • NAT • Шлюз
Каталог оборудования
Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua.
Производители
Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua.
Функциональные группы
Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua.