Centos 7 nat настройка

Обновлено: 07.07.2024

Процесс настройки шлюза (NAT) на системах UNIX, обычно, выполняется в несколько команд: включением перенаправления на уровне системы и настройкой firewall.

Настройка системы
Настройка брандмауэра
Проброс портов

Настройка системы
Все что нужно настроить — включить перенаправления на уровне ядра. Для этого открываем следующий файл:

И добавляем в него следующую строку:

После применяем настройку:

sysctl -p /etc/sysctl.conf

В случае с единым сетевым интерфейсом больше ничего делать не потребуется — CentOS начнет работать как Интернет-шлюз.

В случае с несколькими сетевыми адаптерами, настраиваем сетевой экран.

Настройка брандмауэра
Рассмотрим настройку фаервола при помощи двух различных популярных утилит — firewalld и iptables.

Firewalld
Настройка выполняется для двух сетевых интерфейсов — ens32 (внутренний) и ens34 (внешний):

firewall-cmd --direct --permanent --add-rule ipv4 nat POSTROUTING 0 -o ens34 -j MASQUERADE

firewall-cmd --direct --permanent --add-rule ipv4 filter FORWARD 0 -i ens32 -o ens34 -j ACCEPT

firewall-cmd --direct --permanent --add-rule ipv4 filter FORWARD 0 -i ens34 -o ens32 -m state --state RELATED,ESTABLISHED -j ACCEPT

systemctl restart firewalld

Iptables
Настройка выполняется из расчета, что внутренняя сеть имеет адресацию 192.168.0.0/24:

iptables -t nat -A POSTROUTING -s 192.168.0.0/24 -j MASQUERADE

systemctl restart iptables

Проброс портов (Port Forwarding)
Необходим для перенаправление сетевых запросов на сервер, стоящий за NAT и не имеющий прямого выхода во внешнюю сеть. Настройки отличаются в зависимости от способа управления брандмауэром netfilter.

Firewalld
firewall-cmd --zone=external --permanent --add-forward-port=port=25:proto=tcp:toport=8025:toaddr=192.168.0.15

Разрешаем сам порт:

firewall-cmd --permanent --zone=external --add-port=25/tcp

Чтобы правило вступило в силу:

Iptables
Настройка выполняется двумя командами:

iptables -t nat -A PREROUTING -p tcp -m tcp -d 10.8.232.111 --dport 25 -j DNAT --to-destination 192.168.0.15:8025

iptables -t nat -A POSTROUTING -p tcp -m tcp -s 192.168.0.15 --sport 8025 -j SNAT --to-source 10.8.232.111:25

iptables -t nat -A PREROUTING -p tcp -i eth0 --dport 25 -j DNAT --to-destination 192.168.0.15:8025

iptables -A FORWARD -p tcp -d 192.168.0.15 --dport 8025 -m state --state NEW,ESTABLISHED,RELATED -j ACCEPT

date

21.04.2020

directory

CentOS, Linux

comments

комментария 3

В этой статье мы рассмотрим процесс организации и настройки простого интернет-шлюза на базе CentOS 7.x. Данный шлюз позволит пользователям из локальной сети выходить в Интернет, а также получать доступ к серверам или компьютерам во внутренней сети снаружи. Для организации маршрутизации и пересылки пакетов мы будем использовать технологию NAT на базе межсетевого экрана iptables. Также рассмотрим, как вести и анализировать логи подключений на интернет-шлюзе при доступе внешних пользователей в локальную сеть.

Схема локальной сети со шлюзом доступа в Интернет, типы NAT

NAT (Network Address Translation) – трансляция IP адресов, это механизм, позволяющий подменять адрес источника и назначения в заголовке IP пакетов, при их прохождении через маршрутизатор, т.е. между разными сетями.

Настраивать NAT будем между внутренней сетью с адресацией 10.2.0.0/24 и внешней сетью Интернет, двух видов:

  • source NAT – это подмена IP адреса источника, в нашем случае, для организации выхода в Интернет через один публичный IP адрес нескольких клиентов.
  • destination NAT — подмена IP адреса назначения, в нашем случае, для обеспечения доступа из внешней сети Интернет через публичный IP адрес к серверам внутренней сети.

Определим элементы сети (рисунок 1), между которыми будет организован NAT:

  • gw-server – сервер шлюз, т.е. наш CentOS Linux сервер, который предоставляет доступ за пределы внутренней сети. У него два интерфейса, первый eth1(10.2.0.1) во внутренней сети, второй eth0(84.201.168.122) с публичным IP адресом и доступом в Интернет;
  • web-server01 – веб сервер внутренней сети, IP адрес 10.2.0.11;
  • my-server01 – личный сервер внутренней сети, IP адрес 10.2.0.12.

схема сети с NAT шлюзом доступа в интернет на базе Linux CentOS

Примечание: для серверов внутренней сети web-server01 и myserver01 маршрут по умолчанию установлен на интерфейс eth1(10.2.0.1) сервера gw-server01.

Настройка Source NAT: доступ из локальной сети в Интернет

В прошлой статье “Базовая настройка файервола Linux с помощью iptables” мы рассмотрели азы использования iptables. В этот раз, работать в iptables будем не только с таблицей filter, но и с таблицей nat. В отличие от таблицы для фильтрации трафика filter, таблица nat содержит следующие chains(цепочки):

Отличаются и действия, выполняемые для IP пакетов, в этой таблице:

Важно: действие MASQUERADE и SNAT задается только для цепочки POSTROUTING, а действие DNAT только для цепочек PREROUTING или OUTPUT.

На рисунке 2 изображены этапы обработки IP пакета из внутренней сети на шлюзе gw-server01 при SNAT на iptables. IP адрес и порт назначения при этом остаются неизменными.

схема цепочек forward postrouting в linuc iptables

Рисунок 2

  1. IP пакет поступил на внутренний интерфейс eth1 сервера gw-server01. Так как IP назначения не принадлежит серверу gw-server01, IP пакет переходит к обработке цепочкой FORWARD.
  2. После прохождения цепочки FORWARD, для IP пакета определяется исходящий сетевой интерфейс, с которого он должен быть отправлен, это отмечено желтым цветом
  3. В конце IP пакет проходит цепочку POSTROUTING, в которой происходит подмена IP адреса источника, на IP адрес внешнего интерфейса eth0 сервера gw-server01

Приступим к настройке. Сначала нужно установить параметр ядра, который позволяет передавать пакеты между интерфейсами сервера. Для этого в файл /etc/sysctl.conf добавим переменную:

Чтобы применить изменения, выполним команду

sysctl -p /etc/sysctl.conf

здесь sysctl это команда, которая позволяет управлять параметрами ядра, ключ -p означает, что нужно считать параметры из файла.

Создадим правило в iptables, разрешающее передачу пакетов между внутренним (eth1) и внешним (eth0) интерфейсом:

iptables -A FORWARD -i eth1 -o eth0 -j ACCEPT

и разрешим передавать между интерфейсами пакеты, относящиеся к уже установленным соединениям.

iptables -A FORWARD -m state --state RELATED,ESTABLISHED -j ACCEPT

Предыдущие два правила имеет смысл создавать, только если для цепочки FORWARD по умолчанию установлена политика DROP:

iptables -P FORWARD DROP

iptables -t nat -A POSTROUTING -s 10.2.0.0/24 -o eth1 -j SNAT --to-source 84.201.168.122

Посмотрим получившуюся конфигурацию для таблицы filter и цепочки FORWARD (вывод обрезан):

iptables -L -n -v chain forward

и конфигурацию для таблицы nat и цепочки POSTROUTING (вывод обрезан):

iptables -t nat -L -n -v

iptables nat postrouting chain

Для проверки, что наш веб-сервер во внутренней сети получил доступ в Интернет, попробуем подключиться через telnet на адрес 1.1.1.1 (Cloudflare DNS) порт 80:

telnet 1.1.1.1 80

test telnet via iptables nat

Вывод команды Connected 1.1.1.1, показывает, что подключение прошло успешно.

Настройка Destination NAT и port forwarding: доступ из Интернета в локальную сеть

Порт форвардинг в Windows можно организовать с помощью команды netsh interface portproxy .

Сначала разрешим передачу пакетов с внешнего интерфейса (eth0) на внутренний (eth1) интерфейс:

iptables -A FORWARD -i eth0 -o eth1 -j ACCEPT

Это правило разрешает передавать IP пакеты между интерфейсами независимо от источника. Но можно отдельным правилом запретить подключение через NAT для отдельных IP адресов или подсетей:

iptables -I FORWARD 1 -o eth1 -s 167.71.67.136 -j DROP

Внимание: здесь в команде используется ключ –I вместо –A. Ключ –I позволяет добавить правило по определенному номеру в последовательности правил цепочки, указав индекс. Например, в команде выше, индекс единица в цепочке FORWARD, то есть, правило будет добавлено в начало цепочки. Если это правило будет добавлено в конец, оно не сработает, так как IP пакет будет обработан предыдущим правилом, разрешающим любые источники взаимодействия, и на этом его прохождение по цепочке FORWARD будет завершено.

Теперь перенаправим все соединения на порт 80 интерфейса внешней сети(eth0) на IP адрес веб сервера внутренней сети web-server01:

iptables -t nat -A PREROUTING -p tcp --dport 80 -i eth0 -j DNAT --to-destination 192.168.0.11

Для проверки, попробуем подключиться из сети Интернет через telnet на публичный IP адрес сервера gw-server на порт 80:

telnet 84.201.168.122 80

Результатом будет ответ веб сервера web-server01 из нашей внутренней сети:

Аналогично можно настроить доступ из интернета на свою рабочую станцию по RDP. Так как доступ по RDP будет нужен ограниченному количеству человек, безопасней будет использовать при подключении нестандартный порт, например 13389, а уже с него перенаправлять на порт 3389 сервера внутренней сети (либо изменить номер RDP порта на Windows компьютере). Измененный порт назначения указывается через двоеточие после IP адреса:

iptables -t nat -A PREROUTING -p tcp --dport 13389 -i eth0 -j DNAT --to-destination 192.168.0.12:3389

Для проверки, попробуем подключиться из сети Интернет через telnet (или командлет PowerShell Test-NetConnection) на публичный IP адрес сервера gw-server на порт 13389:

telnet 84.201.168.122 13389

В ответ получим пустой экран и курсор, это говорит о том, что соединение работает.

Анализ логов сетевых подключений NAT в Linux

Одним из моментов, для повышения уровня безопасности после настройки port forwarding на наш личный сервер из внешней сети, будет сборка и анализ логов внешний подключений. Ведь кроме нас, этим доступом может попробовать воспользоваться злоумышленник.

Сначала включим запись в лог файл /var/log/messages все попытки соединений на используемый нами нестандартный RDP порт:

iptables -I INPUT 1 -p tcp --dport 13389 -m state --state NEW -j LOG --log-prefix "NEW RDP SESSION"

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

cat /var/log/messages | grep "NEW RDP SESSION"

Читать такой лог не очень удобно, тем более каждый день. Поэтому, следующим шагом, автоматизируем анализ логов, чтобы регулярно получать отчеты, на основе нашего фильтра. Для этого воспользуемся утилитой Logwatch, ее установка через стандартный менеджер пакетов yum:

yum install logwatch

Сначала попробуем сгенерировать отчет вручную:

/usr/sbin/logwatch --detail low --service iptables --range today

По умолчанию logwatch отобразит отчет на экран, получим примерно такой вывод:

Отчет работает, осталось выполнять его по расписанию, раз день и отправлять себе на email, для этого обновим команду и запишем ее в файл /etc/cron.daily/00logwatch:

Здесь добавились опции:

Оригинал: Turning a CentOS/RHEL 6 or 7 machine into a router
Автор: SHUSAIN
Дата публикации: 13 декабря 2017 года
Перевод: А. Кривошей
Дата перевода: август 2018 г.

В этом руководстве мы научимся превращать RHEL/CentOS 6 и 7 в маршрутизатор с помощью NAT. Маршрутизатор, как известно, это сетевое устройство уровня 3, которое используется для подключения двух или более сетей, то есть подключения локальной сети к глобальной сети или локальной сети к локальной сети и т. д. Маршрутизаторы довольно дороги, особенно для небольших организаций. Поэтому вместо использования специального оборудования мы можем использовать любую машину Linux и преобразовать ее в маршрутизатор. Мы будем обсуждать процесс для RHEL/CentOS 6 и 7. Но прежде всего, давайте обсудим, что нам понадобится для нашей работы.

Предварительные требования

1. Машина с установленной RHEL/CentOS 6 или 7.
2. Два сетевых адаптера для назначения локального IP-адреса и IP-адреса WAN соответственно.

Мы должны назначить IP-адрес для обеих сетевых интерфейсов, один IP-адрес должен быть для локальной сети (информация о нем будет предоставляться нашим сетевым администратором), а другой IP должен быть для доступа к интернету, информация для WAN IP будет предоставлена провайдером. Например:

Примечание. Измените имя интерфейса в соответствии с используемым дистрибутивом Linux.

Теперь, когда у нас есть то, что нам нужно, перейдем к настройке.

Шаг 1. Включение переадресации IP-адресов.

Во-первых, мы включим IP-переадресацию на машине. Эта операция выполняется одинаково в RHEL/CentOS 6 и 7. Для включения переадресации IP, выполните команду:

Но это не будет работать после перезагрузки системы. Откройте файл:

и добавьте в него следующую строку:

Сохраните файл и выйдите из редактора. Теперь IP-переадресация включена на постоянной основе.

Шаг 2. Настройка правил IPtables/Firewalld

Теперь нам нужно запустить службы IPtables/firewalld, чтобы настроить правило NATting.

Следующим шагом является настройка правил NAT в брандмауэре. Выполните следующую команду.

Здесь XXXX - это имя сетевого интерфейса с IP-адресом WAN. Это завершающий этап настройки Linux-машины как маршрутизатора, далее мы проверим наш маршрутизатор после настройки клиентской машины.

Шаг 3. Настройка клиентской машины

Чтобы проверить маршрутизатор, нам необходимо назначить внутренний (LAN) IP-адрес в качестве шлюза на нашей клиентской машине, в нашем случае 192.168.1.1. Поэтому убедитесь, что у нас назначен адрес 192.168.1.1 в качестве нашего шлюза. Как только это будет сделано, откройте терминал (CMD в случае машины с Windows), и запустите тест пинга, чтобы убедиться, что на клиентской машине доступен интернет.

В данной заметке я хочу рассмотреть простой и быстрый вариант настройки шлюза для организации доступа в интернет из локальной сети на базе CentOS 7. Не будет никакого дополнительного функционала, только самое необходимое для доступа к интернету компьютеров за шлюзом.

Научиться настраивать MikroTik с нуля или систематизировать уже имеющиеся знания можно на . Автор курса, сертифицированный тренер MikroTik Дмитрий Скоромнов, лично проверяет лабораторные работы и контролирует прогресс каждого своего студента. В три раза больше информации, чем в вендорской программе MTCNA, более 20 часов практики и доступ навсегда.

Данная статья является частью единого цикла статьей про сервер Debian.

Введение

В нашем распоряжении будет следующий сервер для настройки шлюза:

Использовался образ minimal для установки CentOS 7. Если вы еще не выполнили установку, рекомендую воспользоваться моим материалом на эту тему. На сервере две сетевые карты eth0 и eth1:

  • eth0 подключена к интернету
  • eth1 подключена к локальной сети вместе с компьютерами

В данной статье мы выполним необходимые предварительные настройки на сервере, включим nat, настроим firewall и установим средство мониторинга сетевой активности.

Если у вас недостаточно опыта и вы не чувствуете в себе сил разобраться с настройкой шлюза самому с помощью консоли сервера - попробуйте дистрибутив на основе centos для организации шлюза и прокси сервера в локальной сети - clearos. С его помощью можно через браузер настроить весь необходимый функционал. В отдельной статье я подробно рассказал о настройке clearos.

Предварительная настройка сервера

Любую настройку сервера я рекомендую начинать с обновления:

После этого я устанавливаю mc, так как привык к нему и постоянно пользуюсь:

Дальше отключаем selinux. Находим файл /etc/sysconfig/selinux и редактируем его:

Приводим строку с соответствующим параметром к следующему виду:

Чтобы применить изменения, перезагружаем сервер:

Более подробно о базовой настройке сервера CentOS 7 читайте отдельно. Мы же двигаемся дальше.

Теперь настроим сеть. Я очень подробно рассмотрел вопрос настройки сети в CentOS 7 в своем отдельном материале. Рекомендую с ним ознакомиться. Здесь же я кратко выполню необходимые команды, без пояснений.

Сначала удаляем NetworkManager. Он нам не понадобится, выполним все настройки вручную. Иногда он может вызывать непонятные ошибки, я предпочитаю им не пользоваться:

Теперь включаем классическую службу сети в CentOS 7:

Настраиваем сетевые интерфейсы:

Перезапускаем службу сети:

Смотрим, что получилось:

Сетевые параметры в CentOS 7

Вы настраивайте сеть в зависимости от своих условий. Если внешний адаптер получает настройки не по dhcp, как у меня, а в статике, то не забудьте настроить шлюз по-умолчанию и dns сервер. Как это сделать написано в моей статье о сетевых параметрах, ссылку на которую я приводил выше.

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

Включаем маршрутизацию, firewall и nat

Чтобы сервер мог маршрутизировать пакеты между сетевыми адаптерами, необходимо выполнить следующую настройку. Находим файл /etc/sysctl.conf и вставляем туда строку:

Чтобы заработала настройка, выполняем команду:

Теперь приступаем к самому главному - настройке фаерволла. Опять же отсылаю вас к своему материалу, где я очень подробно рассмотрел вопрос настройки iptables в CentOS 7. Там же приведен готовый скрипт для iptables. Так что выполняем все необходимые действия без пояснений.

Устанавливаем службы iptables:

Скачиваем скрипт с правилами iptables.sh. Данные правила включают NAT, закрывают доступ к серверу снаружи, разрешают пинги, разрешают всем пользователям локальной сети доступ в интернет. Дополнительный функционал отключен. В скрипте подробно описаны все правила. Вам необходимо только заменить в начале переменные на свои. В моем случае это будет выглядеть так:

Помещаем отредактированный скрипт в /etc/iptables.sh и делаем его исполняемым:

Добавляем их в автозагрузку:

Выполняем скрипт с правилами:

Проверяем установленные правила:

активные правила iptables

Если у вас то же самое, значит вы все сделали правильно.

По сути наш шлюз уже готов и может обслуживать клиентов. Но не работает одна важна служба, без которой нормальной работы с интернетом не получится. Нам нужно настроить кэширущий dns сервер для клиентов локальной сети. Можно пойти по простому и очень простому пути. Простой путь это выполнить простейшую настройку dns сервера bind. Как это сделать у меня опять же подробно написано отдельно - настройка Bind 9 в CentOS 7. Рекомендую ознакомиться, там рассмотрены интересные нюансы настройки.

Очень простой путь это установить dnsmasq, который помимо dns сервера включает в себя еще и dhcp сервер, который нам может пригодиться.

Установка и настройка dnsmasq в CentOS 7

С большой долей вероятности dnsmasq у вас уже установлен. Проверить это можно следующей командой:

Если вывод такой же, значит пакет уже стоит. Если нет, то устанавливаем dnsmasq командой:

Редактируем файл конфигурации /etc/dnsmasq.conf и приводим его к очень простому виду:

Либо перезапускаем, если он был у вас запущен:

Добавляем dnsmasq в автозагрузку:

Я редактировал конфиг, когда у меня уже был установлен и запущен dnsmasq. И он то ли завис, то ли просто затупил, но я не мог его перезагрузить или остановить с помощью systemctl. Пришлось перезагрузить сервер. После этого все нормально заработало. Клиент на windows получил сетевые настройки. Информация об этом появилась в логе /var/log/messages. Я проверил на клиенте интернет, все было в порядке, он работал.

На этом настройка завершена, шлюзом под CentOS 7 можно пользоваться.

Анализ сетевой активности на шлюзе в linux

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

Она отсутствует в стандартном репозитории CentOS 7. Для ее установки необходимо подключить репозиторий epel:

Устанавливаем iftop на CentOS 7:

Теперь мы можем смотреть загрузку сети на шлюзе в режиме реального времени. Чтобы увидеть сетевую активность, достаточно запустить iftop:

По-умолчанию она слушает интерфейс eth0. Это внешний интерфейс шлюза, на нем все подключения будут отображены от имени самого шлюза и определить, кто же в сети занимает канал мы не сможем. Чтобы это увидеть, необходимо запустить просмотр сетевой активности на локальном интерфейсе. Сделать это не сложно, достаточно запустить iftop с параметром:

Теперь уже гораздо интереснее. Я еще добавил параметр -P, который отображает порты, по которым проходят соединения. Посмотрим, кто больше всех загружает канал интернета:

Анализ сетевой активности на шлюзе

В моем случае это пользователь с ip 192.168.10.98, на котором я запустил проверку скорости интернета с серверов Яндекса.

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

Заключение

С помощью бесплатного дистрибутива Linux мы смогли за считанные минуты настроить шлюз для организации доступа в интернет компьютеров из локальной сети. У меня ушло минут 10 на настройку шлюза по этой инструкции. Если вы делаете это первый раз, то конечно у вас уйдет гораздо больше времени. Нужно будет разобраться в нюансах, к тому же я дал много ссылок на дополнительный материал.

Давайте разберемся в том, что мы сделали:

  1. Выполнили предварительную настройку сервера, подготовили его к работе.
  2. Включили маршрутизацию.
  3. Настроили firewall.
  4. Включили NAT.
  5. Установили и настроили dnsmasq для организации служб dns и dhcp.
  6. Проанализировали сетевую активность шлюза, узнали кто загружает канал интернета.

Это минимально необходимый функционал для организации работы шлюза на CentOS 7. Следующим этапом может быть настройка прокси сервера, шейпера траффика, настройка 2-х и более провайдеров и много другое. Что-то из этого я рассмотрю в своих будущих статьях.

Напоминаю, что данная статья является частью единого цикла статьей про сервер Debian.

Онлайн курсы по Mikrotik

  • Знания, ориентированные на практику;
  • Реальные ситуации и задачи;
  • Лучшее из международных программ.

Помогла статья? Подписывайся на telegram канал автора

Анонсы всех статей, плюс много другой полезной и интересной информации, которая не попадает на сайт.

Автор Zerox

93 комментария

Спасибо за статью, настроил на centos 8, я новичок, шлюз заработал но не сразу, было много ошибок с моей стороны в iptables, название соединения а не устройства, ошибки в переменных, чтение логов прояснило ситуацию.

Здравствуйте, настраивал сервер по вашему сайту еще года 3 назад, спасибо огромное! Но почему пппое соединение медленное? Кабель гигабит и скорость 250 на тарифе, в ноуте и вифи 200-250 дает, но в серваке ни в какую, куда гуглить? Сам понимаю на уровне прочитал, повторил и забыл, спасибо заранее!
Да, с сервером тоже гигабит и самба диск расшаренный обменивается с гигабитной скоростью файлами.

А в ноуте это же pppoe подключение пробовали? Пров точно дает 250 скорость? Может это он не вытягивает?

Да, в ноуте и в роутере, дает 250 без проблем, ноут по локали с файлопомойкой на сервере тоже дает гигабит судя по скоростям, на самом сервере спидтест тоже скорости 60-80 мбит дают

Спасибо, почитал, из того что нашел это добавил в правила $IPT -t mangle -I FORWARD -p tcp --tcp-flags SYN,RST SYN -j TCPMSS --clamp-mss-to-pmtu понятия не имею что это и в / etc / sysconfig / network-scripts / ifcfg-ppp0 добавил PLUGIN='/usr/lib64/pppd/2.4.5/rp-pppoe.so' вроде как про это везде, смысл отдаленно что это скоростной. Так же в файле ifcfg-ppp0 есть строка CLAMPMSS=1450 я подумал что это MTU и поменял на рекомендуемый провайдером и многими интернет ресурсами 1492, но тогда ifup ppp0 подниматься не хочет, мои манипуляции ничего не испортили, уже хорошо, но и пользы не принесли.
Да по ifconfig MTU на ppp0 1492 стоит какой бы в ifcfg-ppp0 параметр CLAMPMSS не ставил (меньше 1450 нормально поднимается, пробовал 1412 например)

Блин извиняюсь, все заработало, после того как дал доступ во внутреннюю сеть в фаерволе.

сами попробуйте настроить шлюз придерживаясь чисто своей статьи.

я же ничего от себя не добавлял, все делал как написано в статье, учитывая только названия и адреса. ни чего лишнего. но не работает шлюз. что то в статье вы упустили.

все сделал как в статье нифига не заработало

Что именно не заработало? Тут нет никакой магии. Просто настройка iptables, dhcp и dns.

Вообще у кого нибудь заработал шлюз настроенной по этой статье? Отпишитесь.

первая сетевая карта использует тот же днс и интернет на ней работает

Добрый день, сделал все как написано в статье, но в локалке интернета нету. Почему? Можете объяснить?

ens34: flags=4163 mtu 1500
inet 192.168.10.1 netmask 255.255.255.0 broadcast 192.168.10.255
inet6 fe80::20c:29ff:fe52:9d91 prefixlen 64 scopeid 0x20
ether 00:0c:29:52:9d:91 txqueuelen 1000 (Ethernet)
RX packets 687 bytes 52943 (51.7 KiB)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 23 bytes 1550 (1.5 KiB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
device interrupt 16 base 0x2000

lo: flags=73 mtu 65536
inet 127.0.0.1 netmask 255.0.0.0
inet6 ::1 prefixlen 128 scopeid 0x10
loop txqueuelen 1000 (Local Loopback)
RX packets 26 bytes 1798 (1.7 KiB)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 26 bytes 1798 (1.7 KiB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0

Читайте также: