Различия
Показаны различия между двумя версиями страницы.
Предыдущая версия | |||
— | nat [2025/07/06 12:39] (текущий) – внешнее изменение 127.0.0.1 | ||
---|---|---|---|
Строка 1: | Строка 1: | ||
+ | ====== NAT преобразование сетевых адресов ====== | ||
+ | **NAT** (Network Address Translation - преобразование сетевых адресов) — это механизм в сетях [[TCP]]/IP, позволяющий преобразовывать IP- адреса транзитных пакетов. Также имеет названия IP Masquerading, | ||
+ | |||
+ | **Терминология NAT:** | ||
+ | * Внутренний локальный адрес (Inside local address). Это адреса IP, присвоенные узлам внутренней сети. Как правило, | ||
+ | * Внутренний глобальный адрес (**Inside global address**). Этот адрес выдается организации центром NIC или поставщиком услуг Интернет. Он представляет один или более внутреннихузлов во внешней сети. | ||
+ | * Внешний локальный адрес (**Outside local address**). Это адрес IP, присвоенный внешнему узлу и означающий, | ||
+ | * Внешний глобальный адрес (**Outside global address**). Это адрес IP, присвоенный узлу внешней сети владельцем данного узла. Этот адрес принадлежит глобальному адресному или сетевому пространству. | ||
+ | |||
+ | Читайте также: [[iptables# | ||
+ | ====== Тюнинг NAT в Linux ====== | ||
+ | Операция NAT является одной из самых ресурсоёмких. NAT- сервер запоминает все соединения, | ||
+ | * **Размер таблицы NAT** | ||
+ | - Посмотреть текущий размер таблицы NAT утилитой [[sysctl|sysctl]]:< | ||
+ | # sysctl net.netfilter.nf_conntrack_max | ||
+ | net.netfilter.nf_conntrack_max = 65536 | ||
+ | или | ||
+ | # sysctl -a | grep conntrack_max | ||
+ | net.netfilter.nf_conntrack_max = 65536 | ||
+ | net.ipv4.netfilter.ip_conntrack_max = 65536 | ||
+ | net.nf_conntrack_max = 65536 | ||
+ | </ | ||
+ | - Посмотреть заполненность таблицы< | ||
+ | # sysctl net.netfilter.nf_conntrack_count | ||
+ | net.netfilter.nf_conntrack_count = 654 | ||
+ | </ | ||
+ | - Если будет принято решение об увеличение размера таблицы ([[sysctl]] -w net.netfilter.nf_conntrack_max=ваше_значение), | ||
+ | # echo 16384 > / | ||
+ | </ | ||
+ | * **Timeout NAT**. Информация о сессиях также может быть удалена по timeout. Т.е. если втечение долгого времени в рамках соединения обмена трафика нет - сессия закрывается и информация о ней так же удаляется из таблицы NAT. По умолчанию значения тайм-аутов стоят достаточно большие. Поэтому, | ||
+ | # sysctl -a | grep conntrack | grep timeout | ||
+ | net.netfilter.nf_conntrack_generic_timeout = 600 - NAT- сервер | ||
+ | будет хранить информацию о сессии даже в том случае, | ||
+ | net.netfilter.nf_conntrack_tcp_timeout_syn_sent = 120 | ||
+ | net.netfilter.nf_conntrack_tcp_timeout_syn_recv = 60 | ||
+ | net.netfilter.nf_conntrack_tcp_timeout_established = 432000 - TCP- сессию NAT- сервер | ||
+ | будет отслеживать 5 дней(!), | ||
+ | это может привести к быстрому заполнению nf_conntrack_max | ||
+ | net.netfilter.nf_conntrack_tcp_timeout_fin_wait = 120 | ||
+ | net.netfilter.nf_conntrack_tcp_timeout_close_wait = 60 | ||
+ | net.netfilter.nf_conntrack_tcp_timeout_last_ack = 30 | ||
+ | net.netfilter.nf_conntrack_tcp_timeout_time_wait = 120 | ||
+ | net.netfilter.nf_conntrack_tcp_timeout_close = 10 | ||
+ | net.netfilter.nf_conntrack_tcp_timeout_max_retrans = 300 | ||
+ | net.netfilter.nf_conntrack_tcp_timeout_unacknowledged = 300 | ||
+ | net.netfilter.nf_conntrack_udp_timeout = 30 | ||
+ | net.netfilter.nf_conntrack_udp_timeout_stream = 180 | ||
+ | net.netfilter.nf_conntrack_icmp_timeout = 30 | ||
+ | net.netfilter.nf_conntrack_events_retry_timeout = 15 | ||
+ | net.ipv4.netfilter.ip_conntrack_generic_timeout = 600 | ||
+ | net.ipv4.netfilter.ip_conntrack_tcp_timeout_syn_sent = 120 | ||
+ | net.ipv4.netfilter.ip_conntrack_tcp_timeout_syn_sent2 = 120 | ||
+ | net.ipv4.netfilter.ip_conntrack_tcp_timeout_syn_recv = 60 | ||
+ | net.ipv4.netfilter.ip_conntrack_tcp_timeout_established = 432000 | ||
+ | net.ipv4.netfilter.ip_conntrack_tcp_timeout_fin_wait = 120 | ||
+ | net.ipv4.netfilter.ip_conntrack_tcp_timeout_close_wait = 60 | ||
+ | net.ipv4.netfilter.ip_conntrack_tcp_timeout_last_ack = 30 | ||
+ | net.ipv4.netfilter.ip_conntrack_tcp_timeout_time_wait = 120 | ||
+ | net.ipv4.netfilter.ip_conntrack_tcp_timeout_close = 10 | ||
+ | net.ipv4.netfilter.ip_conntrack_tcp_timeout_max_retrans = 300 | ||
+ | net.ipv4.netfilter.ip_conntrack_udp_timeout = 30 | ||
+ | net.ipv4.netfilter.ip_conntrack_udp_timeout_stream = 180 | ||
+ | net.ipv4.netfilter.ip_conntrack_icmp_timeout = 30 | ||
+ | </ |
📌 Удобный подбор VPS по параметрам доступен на DIEGfinder.com - официальном инструменте проекта DIEG. Это часть единой экосистемы, созданной для того, чтобы помочь быстро найти подходящий VPS/VDS сервер для любых задач хостинга.
📌 Для тестирования скриптов, установщиков VPN и Python-ботов рекомендуем использовать надежные VPS на короткий срок. Подробнее о быстрой аренде VPS для экспериментов - читайте здесь.
💥 Подпишись в Телеграм 💥 и задай вопрос по сайтам и хостингам бесплатно!7 Самых Популярных Статей
- Как запустить скрипты и веб-приложения на Python
- Что такое страны TIER 1,2,3
- 7 способов сравнения файлов по содержимому в Windows или Linux
- Установка и тестирование веб-панели HestiaCP
- Nginx простые примеры конфигурации
- top, htop, atop определение загрузки ОС (Load average, LA)
- Использование rsync в примерах
7 Самых Популярных Обзоров
- Хостинг для Python-скриптов и приложений
- ТОП 4 лучших антидетект браузеров (Бесплатные & Платные)
- Подборка купонов (промокоды) на хостинг, антидетект браузеры
- Обзор THE.Hosting (PQ Hosting): надежный хостинг с профессиональной поддержкой
- Хостинг в России
- Хостинг в Европе
- Обзор браузера Dolphin {anty} для мультиаккаунтинга