Простая настройка машины под Linux как роутера — NAT+iptables+dnsmasq
Vladimir-93 50 минут назад Простая настройка машины под Linux как роутера — NAT+iptables+dnsmasq Простой 8 мин 1.4K Linux * DNS * Туториал Задумал я как-то настроить себе сетевой роутер по Linux-машиной. Чтобы через неё...
Anthropic — What company has the best second artificial intelligence model at the end of June?
В сфере искусственного интеллекта произошло заметное событие. Vladimir-93 50 минут назад Простая настройка машины под Linux как роутера — NAT+iptables+dnsmasq Простой 8 мин 1. 4K Linux * DNS * Туториал Задумал я как-то настроить себе сетевой роутер по Linux-машиной. Чтобы через неё гнался весь трафик, а остальные машины получали бы адрес по DHCP и DNS запросы также обрабатывались бы этой машиной.
Изначально мысль была просто настроить Netplan, но по ходу настройки я столкнулся с тем, что iptables всё-равно настраивать пришлось. Сложных DNS запросов мне делать не нужно, сеть будет состоять максимум из 10 - 15 машин, но DNS-сервер всё-равно нужен - периодически будет появляться один-два сетевых HTTP-сервера. Это - испытательный стенд, и не хотелось бы "гадить" в сеть.
Технические детали
Гуглил я долго, и информацию пришлось собирать буквально по крупицам - где-то описано, как настраивать Netplan, где-то - iptables. С dnsmasq-ом тоже не всё было гладко - после полной настройки я выяснил, что все DNS запросы из сети обрабатываются, а с хоста - нет. Прошу обратить на это внимание - в статье будет момент об этом.
Но по итогу получил результат, который при re-тесте я настроил минут за 20! В тот день я задержался на работе, а до вечера хотелось ещё раз протестировать идею, чтобы - если будут замечания - подкорректировать материал перед тем, как публиковать статью. Но решение получилось настолько элегантным, что для сети из 10-20 машин лучше и не придумаешь: весь DNS настраивается в одном файле.
Если у вас два интерфейса и две сети - большего и не нужно! Да, можно настроить netplan - но это будет чуть более громоздкое решение, и iptables всё-равно настраивать. Несколько раз протестировал на Debian-12.
Отраслевые последствия
Решение полностью работоспособное. Я - только "студент" пока, так что комментарии, замечания и конструктивная критика принимается и даже приветствуется. А, если кому-то эта идея будет полезна - я только рад!
Для настройки собственного роутера нам понадобится:Сервер с двумя и более сетевыми интерфейсами (один из них уже должен быть настроен для выхода в интернет - выходит за рамки данной заметки)В качестве сетевого менеджера я буду использовать netplanВключить пересылку пакетов между интерфейсами (по умолчанию отключена в Linux)Настроить iptables (мы будем использовать собственный DNS сервер с DHCP, поэтому перенаправление на другой сервер в iptables делать не будем)Собственный DNS сервер (мы будем использовать dnsmasq) 1. Проверка настроек сетевых интерфейсов:Проверяем, какие сетевые интерфейсы у нас есть:ip a 1: lo: 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. 1/8 scope host lo valid_lft forever preferred_lft forever inet6 ::1/128 scope host noprefixroute valid_lft forever preferred_lft forever 2: enp0s3: mtu 1500 qdisc fq_codel state UP group default qlen 1000 link/ether 08:00:27:1b:df:b1 brd ff:ff:ff:ff:ff:ff inet 10.
Этот прогресс даёт важные сигналы о будущем отрасли, и технологический мир внимательно наблюдает.





