Если ваш сервер Linux открывает множество исходящих сетевых подключений, вам необходимо увеличить локальный диапазон портов TCP. По умолчанию диапазон не велик. Например, прокси-сервер squid может пострадать, если в нем заканчиваются порты. Другой пример включает в себя серверы большого объема трафика, такие как nginx, LXD vm и многие другие.
Вы можете использовать команду sysctl для изменения параметров ядра во время выполнения. В вашем распоряжении есть следующий параметр: /proc/sys/. Обратите внимание, что этот способ полезен только для высокоскоростных, загруженных серверов Linux или серверов больших сетей.
Как найти текущий тип диапазона портов
Введите следующую команду cat:
ИЛИ используйте команду sysctl:
Установите новый локальный диапазон портов
Вы можете установить диапазон с помощью любой из следующих команд. Для этого вам необходимо быть пользователем root:
ИЛИ
Вышеупомянутые команды определяют диапазон локального порта, который используется TCP и UDP, выбирая локальный порт. Первый номер — первый, второй — последний номер локального порта. Лучше, чтобы эти числа имели разную четность, то есть четное и нечетное значения. Значения по умолчанию — 32768 и 60999 независимо от того, что установлено вашим дистрибутивом или системным администратором. В этом примере 1024 является четным числом, а 65535 — нечетным числом. В противном случае вы получите предупреждение, которое будет выглядеть следующим образом:
Увеличиваем ip_local_port_range портов TCP, используя sysctl.conf
Наконец, отредактируйте файл /etc/sysctl.conf, чтобы на постоянной основе внести изменения в файловую систему /proc, добавьте следующую строку в файл /etc/sysctl.conf:
Как просмотреть всю информацию о сеансе tcp/udp/ip
Используйте команду netstat:
Или используйте команду ss:
Для получения дополнительной информации ознакомьтесь со следующими страницами руководства:
Теперь вы можете реализовать увеличение диапазона портов TCP с помощью параметра ядра net.ipv4.ip_local_port_range.
Спасибо за уделенное время на прочтение статьи!
Если возникли вопросы, задавайте их в комментариях.
Подписывайтесь на обновления нашего блога и оставайтесь в курсе новостей мира инфокоммуникаций!
Чтобы знать больше и выделяться знаниями среди толпы IT-шников, записывайтесь на курсы Cisco от Академии Cisco, курсы Linux от Linux Professional Institute на платформе SEDICOMM University.
Курсы Cisco, Linux, кибербезопасность, DevOps / DevNet, Python с трудоустройством!
- Поможем стать экспертом по сетевой инженерии, кибербезопасности, программируемым сетям и системам и получить международные сертификаты Cisco, Linux LPI, Python Institute.
- Предлагаем проверенную программу с лучшими учебниками от экспертов из Cisco Networking Academy, Linux Professional Institute и Python Institute, помощь сертифицированных инструкторов и личного куратора.
- Поможем с трудоустройством и стартом карьеры в сфере IT — 100% наших выпускников трудоустраиваются.
- Проведем вечерние онлайн-лекции на нашей платформе.
- Согласуем с вами удобное время для практик.
- Если хотите индивидуальный график — обсудим и реализуем.
- Личный куратор будет на связи, чтобы ответить на вопросы, проконсультировать и мотивировать придерживаться сроков сдачи экзаменов.
- Всем, кто боится потерять мотивацию и не закончить обучение, предложим общение с профессиональным коучем.
- отредактировать или создать с нуля резюме;
- подготовиться к техническим интервью;
- подготовиться к конкурсу на понравившуюся вакансию;
- устроиться на работу в Cisco по специальной программе. Наши студенты, которые уже работают там: жмите на #НашиВCisco Вконтакте, #НашиВCisco Facebook.
4 комментария. Оставить новый
А число больше 65535 можно установить?
Нет, нельзя. Порты могут быть от 0 до 65535. Реально операционная система использует от силы 8192. Я когда-то делал сид-бокс для раздачи торентов, так я перекомпилировал ядро FreeBSD чтобы сделать 65535, и то я уперся в быстродействия диска, перешел на SSD, потом уперся в провайдера, который больше 1 ГБ/сек не давал. Так вот, максимум что мне далось использовать 16384 порта. Таким образом 65535 вообще не достижимое число портов на ближайшие 5-10 лет.
Здравствуйте, а как узнать сколько портов используется в данный момент?
Подскажите, диапазон портов увеличил путем внесения записи в /etc/sysctl.conf. Однако, виртуалка после перегрузки все равно выдает предупреждение о диапазоне портов. Как узнать причину этого предупреждения и как ее исправить?