Одна из самых заметных разновидностей BSD — коммерческая операционная система Apple OS X (теперь macOS). Она основана на ОС Darwin, которая, в свою очередь, является ответвлением BSD.
Порядок операций в iptables
Чтобы изменить IP-адрес, маску подсети и т.д., отредактируйте файл /etc/sysconfig/network-scripts/ifcfg-eth0 и задайте такие значения:
DEVICE=eth0
BOOTPROTO=none
ONBOOT=yes
NETMASK=255.255.255.0
IPADDR=10.0.1.27
Чтобы изменить DNS-серверы, отредактируйте файл /etc/resolv.conf и измените строку nameserver, чтобы в ней был необходимый IP-адрес сервера:
nameserver 8.8.8.8
sudo nmcli con mod "Wired connection 1" 802-3-ethernet.mtu
9000
$ sudo nmcli connection up "Wired connection 1"
Connection successfully activated (D-Bus active path: /org/
freedesktop/NetworkManager/ActiveConnection/5)
$
После того как мы задали новое значение MTU, посмотрим, что еще можно сделать с помощью команды nmcli.
умещалось больше данных. В этих случаях MTU обычно устанавливается где-то в районе 9000 (такие кадры часто называются jumbo-кадрами). Это распространенная практика в сетях со скоростями 1 Гбит/с, 10 Гбит/с или более. Более крупные пакеты также встречаются в трафике для резервного копирования или миграции виртуальных машин (например, в службах VMotion в VMware или Live Migration в Hyper-V).
С другой стороны, вам часто придется сталкиваться и с такими ситуациями, когда нужны пакеты меньшего размера. Это важно иметь в виду, потому что не все узлы умеют обрабатывать такие пакеты и многие приложения устанавливают для своего трафика бит DF (Don't Fragment, «не фрагментировать»). В результате бывает, что 1500-байтовый пакет с выставленным DF оказывается в среде передачи, которая поддерживает только 1380-байтовые пакеты. В этом случае приложение просто аварийно завершится, а сообщения об ошибках не помогут устранить неполадки. Где это встречается? При любой передаче данных, в которой участвуют инкапсулированные пакеты, например в туннелях или службах VPN. Они уменьшают размер кадра (и соответствующий размер пакета) за счет накладных расходов на инкапсуляцию, которые обычно легко вычисляются. Еще один
Чтобы добавить сетевой интерфейс egress, можно дописать dev в конец команды ip route add.
Однако так добавляется лишь временный маршрут, который не сохранится, если перезапустить узел или сетевые процессы. Постоянный статический маршрут можно добавить с помощью команды nmcli.
Для начала отобразим сетевые подключения в формате nmcli:
robv@ubuntu:~$ sudo nmcli connection show
NAME UUID TYPE DEVICE
Wired connection 1 02ea4abd-49c9-3291-b028-7dae78b9c968 ethernet ens33
Затем добавим к Wired connection 1 маршрут на 10.10.11.0/24 через 192.168.122.11 с помощью nmcli:
robv@ubuntu:~$ sudo nmcli connection modify "Wired connection
1" +ipv4.routes "10.10.11.0/24 192.168.122.11"
Сохраним изменения:
$ sudo nmcli connection up "Wired connection 1"
Connection successfully activated (D-Bus active path: /org/freedesktop/NetworkManager/ActiveConnection/5)
Теперь, глядя на таблицу маршрутизации, мы видим оба наших статических маршрута:
robv@ubuntu:~$ ip route
default via 192.168.122.1 dev ens33 proto dhcp metric 100
10.10.10.0/24 via 192.168.122.10 dev ens33
10.10.11.0/24 via 192.168.122.11 dev ens33 proto static metric 100
169.254.0.0/16 dev ens33 scope link metric 1000
192.168.122.0/24 dev ens33 proto kernel scope link src 192.168.122.156 metric 100
Однако если перезагрузить систему, можно убедиться, что временного маршрута больше нет, а постоянный остался:
robv@ubuntu:~$ ip route
Инструменты для перехвата пакетов
dSniff, Ettercap, Bettercap
Чтобы добавить временный статический маршрут, мы снова используем команду ip. В этом примере мы заставляем наш узел направить маршрут на 192.168.122.10, чтобы добраться до сети 10.10.10.0/24:
robv@ubuntu:~$ sudo ip route add 10.10.10.0/24 via
192.168.122.10
[sudo] password for robv:
robv@ubuntu:~$ ip route
default via 192.168.122.1 dev ens33 proto dhcp metric 100
10.10.10.0/24 via 192.168.122.10 dev ens33
169.254.0.0/16 dev ens33 scope link metric 1000
192.168.122.0/24 dev ens33 proto kernel scope link src
192.168.122.156 metric 100
Чтобы добавить сетевой интерфейс egress, можно дописать dev в конец коман
DEVICE=eth0
BOOTPROTO=none
ONBOOT=yes
NETMASK=255.255.255.0
IPADDR=10.0.1.27
Если ваш шлюз по умолчанию находится на этом интерфейсе, можно добавить следующую строку:
GATEWAY=192.168.12