Перейти к содержанию

OFFSIDE

Участники форума
  • Постов

    4
  • Зарегистрирован

  • Посещение

Оборудование

  • Кинетик
    3811

Достижения OFFSIDE

Новичок

Новичок (1/6)

0

Репутация

  1. И не знаю что было, решил роутер с нуля переустановить. По инструкции скачал бин файл прошивки, сделал сброс конфигурации. Псоле этого Entware установилась корректно и порт 222 поднялся. Зашел на роутер, сделал opkg update opkg upgrade opkg install mc opkg install cron Затем по инструкции постом выше установил и запустил routing_ripe
  2. Инструкция по установке Файлы config.json и routing_ripe разместить в директории на компьютере, например c:/routing Установить компоненты системы, я сделал так: Открыть страницу настройки OPKG, выбрать встроенный накопитель Настройки сохранить. Открыть приложения: Выбрать встроенное хранилище Создать папку routing, загрузить в нее 2 файла config.json и routing_ripe из папки c:/routing Зайти на роутер через командную строку: telnet 192.168.1.1 Выполнить команыды exec sh chmod +x /opt/routing/routing_ripe командой /opt/routing/routing_ripe запустить процесс обновления маршрутов командой crontab -e вызвать текстовый файл настройки планировщика нажать i написать сроку 0 3 * * * ./opt/routing/routing_ripe нажать два раза эскейп, набрать на клавиатуре :wq готово ПЫ.СЫ. В приоритетах подключений переносим ВПН наверх, к провайдеру оставляем внизу. routing_ripe config.json
  3. Исправил суммаризацию маршрутов
  4. Доброго всем нового года! Прикупил себе на днях Keenetic Hopper 3811. Задача была - wireguard vpn на свой сервер на загнивающем, плюс нормальная работа российских ип через прямое соединение провайдера. Для этих целей нообходимо разделить маршрутами то что будет заворачиваться в туннель, а что пойдет по прямому соединению. Как оказалось (столкнулся впервые) что есть возможность получить список подсетей сегментов интернет Российского диапазона, порядка 11 тысяч записей. Записи в виде CIDR или диапазон от до. Сразу же столкнулся с проблемами. Проблема номер один - попытка прописать статические маршруты. Для получения файла с маршрутами для загрузки в роутер пользовался скриптом: #!/usr/bin/env python3 # coding: utf-8 from ipaddress import IPv4Address, IPv4Network, ip_address, summarize_address_range import sys import os import json import requests def main(country_code): networks = [] filepath = os.path.dirname(sys.argv[0]) result = filepath + '/ip_' + country_code + '.bat' url = 'https://stat.ripe.net/data/country-resource-list/data.json?resource=' + country_code ripe_ip = json.loads(requests.get(url).content)['data']['resources']['ipv4'] with open(result, 'w') as out_file: for record in ripe_ip: if record.find('-') > -1: ips = record.split('-') ipaddr = list(summarize_address_range(IPv4Address(ips[0]), IPv4Address(ips[1]))) else: ipaddr = [IPv4Network(record)] networks.extend(ipaddr) for line in list(networks): print("route ADD " + str(line.network_address) + " MASK " + str(line.netmask) + " 0.0.0.0") if __name__ == "__main__": main("ru") Понятное дело этот скрипт составляет список из ~11 тысяч строк... При попытке загрузки на роутер есть ограничение в 1024 строки. Ну ок, я разбил файл на 11 файлов по одной тысяче и начал загружать. При загрузке 8 тысяч строк роутер повис... И отказался дальше загружать - ограничение прошивки. После перезагрузки остается 6 тысяч строк. Очень жаль, но пришлось отказаться от работы со статическими маршрутами. Как опытный пользователь интернета, после такого облома я полез изучать профильные форумы. Понял что мало кто сталкивается с подобными проблемами и находят какое то правильное решение. Один из вариантов был установка на роутер программы, которая загружает маршруты по протоколу BGP либо из какой то внешней AS, либо из файла. Ссылку на это решение прикрепляю: https://github.com/DennoN-RUS/Bird4Static Проблема номер два - для установки решения требуется установка Entware. На данном форуме есть инструкция по установке, и даже на сайте кинетика есть инструкция по установке. Но - она не работает. На шаге когда на размеченой флешкой в ext4 в папке /install размещен файл установки Entware (aarch64), при переключении накопителя на вкладке opkg согласно инструкции - файл и папка install чудесным образом пропадают, и в логе чего то похожего на то что указано в инструкции - нет. (Версия KeeneticOS 4.2.4) Соответственно ничего не устанавливается, сервер ssh на порту 222 не запускается. Попытался установить Bird4Static вручную, для этого сделал: telnet 192.168.1.1 login >exec sh # команды установки Bird4Static по инструкции Все идет по плану до момента запуска расширения Ip4Static. Из за отсутсвия Entware не запускается служба. Разбираться почему это не работает честно говоря желания не вызывает.... Плюнув на все написал программу на golang которая берет из бд RIPE российские адреса и прописывает маршурты Засунул запуск программы в крон на раз в сутки для работы просит конфиг /opt/routing/config.json: { "country_code": "RU", "file_path": "/opt/routing/subnets.txt", "interface": "ppp0", "ignored_subnets": [], "ignored_ips": [] } интерфейс - имя интерфейса через который будут прописаны маршруты рф сегмента. программа сначала удаляет маршруты которые есть в subnets.txt, затем делает запрос в бд RIPE, затем записываает subnets.txt, затем добавляет маршруты в роутер. бинарь тоже надо размеситить туда же. Есть пока ошибки суммаризации маршрутов но в общем решение работает. Если интересно то могу как то допилить функционал, но без фанатизма.
×
×
  • Создать...

Важная информация

На этом сайте используются файлы cookie. Нажимая "Я принимаю" или продолжая просмотр сайта, вы разрешаете их использование: Политика конфиденциальности.