Openvpn: iroute для всех теоретически доступных [общедоступных] IP-адресов

Я тестирую создание принудительного маршрута по умолчанию только для публичного пространства IPv4 через OpenVPN. OpenVPN не поддерживает

'iroute  0.0.0.0  0.0.0.0'
из коробки, потому что содержит код, который его отвергает. Но если вы удалите этот код и заставите iroute 0.0.0.0 работать, логично, что через некоторое время соединение прервется, потому что OpenVPN запутается.

Я обнаружил, что минимальный диапазон для iroute это / 4. Итак, если вы хотите разделить все пространство IPv4 на / 4 блока, вы получите 16 блоков в диапазоне от 0.0.0.0 до 255.255.255.255. Но он содержит все маршрутизируемые и немаршрутизируемые IP-адреса ... поэтому список необходимо дополнительно разделить.

Из-за нестандартной настройки я не могу использовать шлюз перенаправления. Вот почему я ищу как можно более короткий список подсетей из существующих общедоступных диапазонов IP-адресов. Список должен исключать зарезервированные диапазоны (и публичный IP-адрес моего собственного сервера / 32). По сути, я хотел бы иметь список, противоположный RFC 5735 (стр. 6)

Существует ли такой список и / или как его можно создать?

1
задан 10 September 2011 в 13:53
3 ответа

Почему вы используете iroute ? У меня просто есть "push" route 0.0.0.0 0.0.0.0 "в моей конфигурации сервера OpenVPN, и он отлично работает (ну, мне нужно изменить маршрут по умолчанию, который исходит из DHCP, но это тривиально).

1
ответ дан 3 December 2019 в 22:02
0
ответ дан 3 December 2019 в 22:02

Обновление, я решил написать программу для решения проблемы инвертирования списка блоков cidr. Вы можете получить это от. https://github.com/plugwash/cidrinverse

Запуск программы в списке блоков из rfc 5735 дает список из 111 блоков cidr. Я не буду вставлять сюда полный список, но вы можете легко перезапустить программу самостоятельно, если хотите.


примечание: с момента выпуска этого документа было сделано несколько дополнительных специальных регистраций, а также некоторые "особые" диапазоны используются в общедоступном Интернете, например 192.88.99.0/24)

, но в любом случае допустим, что мы хотим найти список масок cidr для всего пространства, которое rfc 5735 не считает специальным.

Список в rfc 5735 уже отсортирован, поэтому мы можем легко просмотреть список и записать диапазоны IP-адресов между ними.

  • 1.0.0.0–9.255.255.255
  • 11.0.0.0–126.255.255.255
  • 128.0.0.0 до 169.253.255.255
  • 169.255.0.0 до 172.15.255.255
  • 172.32.0.0 до 191.255.255.255
  • 192.0.1.0 до 192.0.1.255
  • 192.0.3.0 до 192.88.98.255
  • 192.88.100.0 в 192.167.255.255
  • 192.169.0.0 в 198.17.255.255
  • 198.20.0.0 в 198.51.99.255
  • 198.51.101.0 в 203.0.112.255
  • 203.0.113.0 в 223.255.255.255

Мы можем перевести каждый из e переходит в список масок CIDR с помощью инструмента командной строки "netmask", как предложено в Диапазоны CIDR для всего, кроме RFC1918

netmask -c 1.0.0.0:9.255.255.255

. Я не обработал полный список, но попробовал несколько диапазонов, я полагаю в нем будет около 60 записей.

1
ответ дан 3 December 2019 в 22:02

Теги

Похожие вопросы