Термин IP Forwarding описывает отправку сетевого пакета с одного сетевого интерфейса на другой на том же устройстве. Его следует включить, если вы хотите, чтобы ваша система работала как маршрутизатор, который передает IP-пакеты из одной сети в другую.
В системе Linux ядро Linux имеет переменную с именем ip_forward, которая сохраняет это значение. Доступ к нему можно получить с помощью файла `/ proc / sys / net / ipv4 / ip_forward`. Значение по умолчанию - 0, что означает отсутствие переадресации IP, потому что обычному пользователю, работающему на одном компьютере без дополнительных компонентов, это обычно не требуется. Напротив, для маршрутизаторов, шлюзов и серверов VPN это очень важная функция.
Далее мы объясним вам, как включить переадресацию IP временно и постоянно.
Переадресация IP как временное решение
Чтобы включить этот параметр ядра на лету, у вас есть два варианта. Вариант 1 просто сохраняет значение 1 в переменной сверху следующим образом:
#выбросил 1 > /процентов/sys/сеть/ipv4/ip_forward
Вариант 2 использует команду `sysctl`, которая позволяет вам также настраивать различные параметры ядра во время выполнения [2]. От имени администратора выполните следующую команду:
#sysctl-вnet.ipv4.ip_forward =1Имейте в виду, что этот параметр изменяется мгновенно. Также результат не сохранится после перезагрузки системы.
Вы можете запросить сохраненное значение следующим образом:
#Кот /процентов/sys/сеть/ipv4/ip_forwardЭта команда возвращает значение 0, если переадресация IP отключена, и значение 1, если пересылка IP включена. В качестве альтернативы использование sysctl также показывает текущий статус:
# sysctl net.ipv4.ip_forwardnet.ipv4.ip_forward =0
#
Включение переадресации IP на постоянной основе
Чтобы добиться этого, необходимо сделать еще несколько шагов. Сначала отредактируйте файл `/ etc / sysctl.conf`. Найдите строку, содержащую запись # net.ipv4.ip_forward = 1, и удалите # в начале строки.
Затем сохраните файл и запустите команду `sysctl`, чтобы активировать измененные настройки:
#sysctl-п /так далее/sysctl.confПараметр «-p» является сокращением от «–load» и требует имени файла конфигурации, за которым следует следовать.
Затем перезапустите файловую систему proc, которая предоставляет информацию о состоянии ядра Linux, используя следующую команду:
#/так далее/init.d/перезапуск procpsПримерно в 2015 году имя файла было сокращено с «procps.sh» до «procps». Итак, в старых системах Debian сценарий, который вы должны вызвать, вместо этого называется `procps.sh`.
Работа с Systemd
Следующее препятствие возникло с выпуском Systemd версии 221. Переадресация IP по умолчанию отключена, а для ее включения требуется наличие дополнительного файла. Если его еще нет, просто добавьте его. Имя файла состоит из имени сетевого интерфейса, за которым следует суффикс `.network`, например,` eth0.network` для сетевого интерфейса `/ dev / eth0`. Как указано в документации [4], другие расширения игнорируются.
Следующий фрагмент кода показывает настройку сетевого интерфейса `/ dev / tun0`. Он состоит из двух разделов - «Match» и «Network». В разделе Match укажите имя сетевого интерфейса, а в разделе сети включите IP Forwarding.
# cat /etc/systemd/network/tun0.network[Соответствие]
Имя= tun0
[Сеть]
IPForward= ipv4
Заключение
Активация переадресации IP для IPv4 не является загадкой. Всего несколько шагов, и вы там. Удачного взлома!
Ссылки и ссылки
* [1] Настройка Systemd-Networkd, Debian Wiki
* [2] Юрген Хаас: Изучите команду Linux sysctl
* [3] Systemd News для версии 221
* [4] Документация для Systemd