Разница между MASQUERADE и SNAT

В этой статье я кратко опишу разницу между MASQUERADE и SNAT.

MASQUERADE. Менее быстрая маршрутизация чем SNAT при массовых запросах, так как для каждого нового соединения определяется IP адрес на внешнем сетевом интерфейсе (WAN). Отлично подходит для маршрутизаторов домашнего использования и когда меняется IP адрес на WAN интерфейсе.
Читать далее «Разница между MASQUERADE и SNAT»

Скрипт просмотра PPS (Packets Per Second)

Скрипт ежесекундно отображает количество входящих и исходящих пакетов в секунду на указанном сетевом интерфейсе.
Содержимое скрипта поместим в файл, например pps.sh и выполним указав имя сетевого интерфейса (остановить выполнение скрипта можно клавишами CTRL+C):

Читать далее «Скрипт просмотра PPS (Packets Per Second)»

Установка и использование ipset

ipset — инструмент состоящий из модуля ядра, библиотек и утилиты, позволяющий организовать список сетей, IP или MAC адресов и т.д., который очень удобно использовать например с IPTables.

Команда установки в Ubuntu:

Читать далее «Установка и использование ipset»

Что делать если не включается «Сетевое обнаружение» в Windows

Однажды заметил на одном из компьютеров, что в сетевом окружении ничего не отображается, а после выбора «Включить сетевое обнаружение» в «Панель управления\Сеть и Интернет\Центр управления сетями и общим доступом\Дополнительные параметры общего доступа», все равно выбор оставался на «Отключить сетевое обнаружение», то есть не применялся.
Читать далее «Что делать если не включается «Сетевое обнаружение» в Windows»

Как посмотреть информацию о сетевом адаптере в Linux

Приведу примеры команд для просмотра информации о сетевом адаптере в Linux.

Просмотре сетевых интерфейсов и назначенных IP адресов:

ifconfig
ifconfig -a
ifconfig -a | grep ens2f0
ip link show

Читать далее «Как посмотреть информацию о сетевом адаптере в Linux»

Ограничение скорости на сетевом интерфейсе используя TC

Приведу пример ограничения скорости до 3,3 Гб/с на сетевом интерфейса в Ubuntu Server 16.04:

/sbin/tc qdisc del dev ens2f0 parent ffff:
/sbin/tc qdisc add dev ens2f0 handle ffff: ingress
/sbin/tc filter add dev ens2f0 parent ffff: protocol ip prio 50 u32 match ip dst 0.0.0.0/0 police rate 3300mbit burst 330k mtu 30000 drop flowid 1:0

Читать далее «Ограничение скорости на сетевом интерфейсе используя TC»

Создание dummy интерфейсов в Linux

Приведу пример создания dummy интерфейсов в Linux.
На тесте использую Ubuntu Server 16.04.

Первый делом необходимо загрузить модуль «dummy», можно также добавить опцию «numdummies=2» чтобы сразу создалось два интерфейса dummyX:
Читать далее «Создание dummy интерфейсов в Linux»

BGP. Балансировка каналов на Quagga

Приведу пример балансировки только входящего трафика при двух каналах используя Quagga.

На тесте буду использовать Ubuntu 16.04.4 LTS и Quagga 0.99.24.1, сетевой интерфейс ens1f0 для второго провайдера с одним neighbors и ens2f0 для первого провайдера с двумя neighbors, в ens2f1 будет подключена локальная сеть. Оба провайдера анонсируют «default».
3.3.3.0/23 это будет моя сеть с белыми IP адресами.
Читать далее «BGP. Балансировка каналов на Quagga»

Настройка DHCP+TFTP для DOCSIS

Недавно нужно было настроить выдачу IP адресов нескольким старым DOCSIS модемам и хосту находящемуся после модема.
Под рукой был Arris Cadant C3 и модемы Thomson TCM-420.

Первым делом запустим DHCP сервер который будет выдавать IP адреса модемам, например как я описывал в этой статье — Установка и настройка isc-dhcp-server.
А также запустим TFTP сервер на котором будут файлы для модемов, например как я описывал в статье — Установка и настройка TFTP сервера

Читать далее «Настройка DHCP+TFTP для DOCSIS»

Как поднять сетевой интерфейс в Linux без IP адреса

Чтобы поднять сетевой интерфейс в Linux без IP адреса, достаточно выполнить команду:

ip link set eth1 up

Если необходимо чтобы сетевой интерфейс поднимался автоматически при запуске системы, то в /etc/network/interfaces пропишем, например:

auto eth1
iface eth1 inet manual
up ifconfig eth1 0.0.0.0 up
down ifcofnig eth1 down