LINUX.ORG.RU
ФорумAdmin

Домашний «Прокси-сервер» для ускорения YouTube - не получается реализовать

 , ,


1

2

Хочу «восстановить» ютуб, починив неожиданно деградировавшие сервера. Пробовал ставить reality клиент на роутер, но мощности не хватает. Поэтому план был такой:

  1. Взять x86 мини сервер
  2. Настроить систему фильтрации, чтобы в ютуб и на прочие сайты с проблемными «кеширующими серверами» ходил через vless клиент.
  3. Прописать этот сервер в качестве gateway на роутере.
  • дополнительно поднять на сервере NextCloud, Transmission и прочие радости жизни.

В качестве основы для сервера взял Debian 12. Для управления фильтрацией трафика поставил v2raya и оно работает (протестировал с помощью curl и ping).

Проблема: не получается прописать сервер в качестве Gateway на роутере. Интернет тут же перестаёт работать.

192.168.1.1 - роутер 192.168.1.69 - сервер

Что я сделал: 0) прописал статичный ip на сервере

  1. ufw активен, порты нужные октрыты (80, 443, 2017 для v2raya)
  2. net.ipv4.ip_forward=1 сделано
  3. SNAT добавил sudo iptables -t nat -A POSTROUTING -o enp3s0f0 -j MASQUERADE
  4. команды для маршрутизации прописал, а именно: sudo iptables -t nat -A PREROUTING -p tcp –dport 80 -j REDIRECT –to-ports 2017 sudo iptables -t nat -A PREROUTING -p tcp –dport 443 -j REDIRECT –to-ports 2017
  5. позже попробовал добавить форвард sudo iptables -A FORWARD -i end0 -o end0 -j ACCEPT
  6. дефолтный маршрут до шлюза имеется и работает корректно default via 192.168.1.1 dev enp3s0f0

Проблема: как только меняю настройки на роутере - всё ломается. Если на роутере отключить NAT, то на сервере даже ping 8.8.8.8 перестает работать. Если не отключать нат, а только прописать в качестве шлюза и днс адрес сервера, то просто интернет на роутере пропадает (по IP на панель роутера при этом зайти можно, ssh не рвется).

Подскажите пожалуйста как сделать, чтобы оно наконец заработало? Куда еще смотреть?

Также на сервере у меня две сетевухи. Возможно стоит поставить фильтрующий сервер ПЕРЕД роутером, а не совместно с ним?

Проблема: не получается прописать сервер в качестве Gateway на роутере. Интернет тут же перестаёт работать.

Вы делаете не правильно, правильно - это превратить ваш роутер в бридж и настроить интернет соединение на x86 сервере.

gagarin0
()
Ответ на: комментарий от One

Поставить на openwrt роутер https://github.com/remittor/zapret-openwrt

Я же написал, что «Пробовал ставить reality клиент на роутер, но мощности не хватает». Зачем писать комментарий если дальше заголовка не читал?

markedo
() автор топика
Ответ на: комментарий от gagarin0

Вы делаете не правильно, правильно - это превратить ваш роутер в бридж и настроить интернет соединение на x86 сервере.

Изначально я вообще взял две сетевухи и хотел поставить сервер перед роутером, чтобы провайдера воткнуть в одну сетевуху, а роутер в другую. Чтобы роутер получал уже «очищенный» интернет и вообще не знал, что его как-то там фильтруют. Я так понимаю, ваш совет реализует эту же идею?

markedo
() автор топика
Ответ на: комментарий от MirandaUser2

Но у меня всё оборудование соединяется через неуправляемый свитч.

Если все оборудование неуправляемое, то илозировать вы сможете только на уровне L1 (проводами)

gagarin0
()
Ответ на: комментарий от markedo

Примерно да, я тогда Вам советую:

  1. Провод от провайдера приходит в отдельную сетевую карту

  2. Вы не назначаете никакие ip адреса на эту карту и добавляете ее в bridge, br-isp0

  3. Во вторую сетевую карту вставляется LAN и добавляется ее в бридж br-lan

  4. Запускаете ли в контейнере, либо виртуальную машину в openwrt/pfsense/vyos/ubuntu) куда пробрасываете оба бриджа

  5. Конфигурирете в этой виртуалке сетевые интерфейсы и поднимаете dns/dhcp сервер на lan интерфейсе

  6. Настраивает туннели в интернет

  7. Profit

gagarin0
()
Ответ на: комментарий от gagarin0

Хм. Можешь пожалуйста подробнее рассказать, зачем нужна виртуалка? У меня вот на сервере v2raya стоит, который нормально фильтрует трафик. Не проще будет это соединение просто дальше прокинуть на другую сетевуху, без всяких виртуалок и тунелей?

markedo
() автор топика
Ответ на: комментарий от markedo

Я не знаю характеристики вашего компьютера, виртуалка нужна чтобы не отдавать такую простую задачу как border-router все ресурсы компьютера.

C таким подходом, вам не составит труда, например, в какой-то момент перейти с openwrt внутри виртуалки на какой-нибудь opnsense

Единственный риск который вы на себя берете - если сломается виртуализация, то не будет интернета, но для домашних условий это подойдет

gagarin0
()
Ответ на: комментарий от markedo

прописать в качестве шлюза и днс адрес сервера, то просто интернет на роутере пропадает

когда вы так делаете вы заворачиваете маршрут в интернет внутрь в LAN порт, поэтому интернет пропадает

anonymous
()
Ответ на: комментарий от anonymous

когда вы так делаете вы заворачиваете маршрут в интернет внутрь в LAN порт, поэтому интернет пропадает

Собственно, я так и думал. Но как сделать нормально? И желательно так, чтобы не прописывать на КАЖДОМ устройстве кастомный хост.

markedo
() автор топика
Ответ на: комментарий от gagarin0

Я не знаю характеристики вашего компьютера, виртуалка нужна чтобы не отдавать такую простую задачу как border-router все ресурсы компьютера

Комп мощный, 4 ядра, 4 гига, игровая видеокарта=) Ресурсов точно хватит. Но разве виртуалка не сожрет больше ресурсов, чем обычные приложения? Виртуалка мне кажется чересчур замороченным способом. На и так сложную архитектуру наслаивается еще один слой. При этом профит для меня не очевиден. Мб просто не хватает мозгов понять.

markedo
() автор топика
Ответ на: комментарий от markedo

Комп мощный, 4 ядра, 4 гига

Для 2012 года - да.

Но разве виртуалка не сожрет больше ресурсов

Накладные расходы при xen паравиртуализации не такие большие.

Мб просто не хватает мозгов понять.

делайте как вам удобнее, если опыта с виртуалками нет - настраивайте прямо в хостовой системе.

gagarin0
()
Последнее исправление: gagarin0 (всего исправлений: 1)