1. Обход блокировок с использованием BGP
2. Выборочный роутинг до перечисленных доменов
Вообще говоря, способ обхода блокировок сильно зависит от провайдера. Рецепты для одного провайдера могут не работать у другого. Так вот у меня способ 1 работает, а способ 2 - нет.
Способ 1 отличный - не нужно думать - настроил и все разблокируется автоматически (я использовал https://antifilter.network/ вместо https://antifilter.download/ ).
В этом способе один недостаток, через VPN канал идет трафик не только заблокированных ip но и многих "нормальных". Это приводит к определенным проблемам. Некоторые программы, привязанные к определенному региону обнаруживают "прокси" и отказываются работать. Другие программы, которые имеют встроенные средства обхода блокировок (android программы для просмотра видео) перестают работать. Некоторые российские интернет магазины, считают, что к ним идет обращение из другой страны и запрашивают ввод "capture".
Как правило реально нужно разблокировать небольшое число ip - десяток другой. В этом случае удобен способ 2, но он не работает с моим провайдером.
Я объединил оба подхода и модифицировал конфигурацию bird, убрал получение маршрутов по BGP и задал статические.
Вышло вот что
Код: Выделить всё
log syslog all;
log stderr all;
router id xx.xxx.xxx.xx; # current external ip
protocol device {
scan time 15;
}
protocol kernel kernel_routes {
scan time 60;
import none;
export all;
kernel table 1000; # kernel routing table number
}
protocol static static_routes {
import all;
....
route 91.132.60.14/32 via 10.8.0.1; # rutor.is
....
route 195.82.146.214/32 via 10.8.0.1; # rutracker.org
...}
Тут 10.8.0.1 - ip адрес удалённого конца VPN-соединения.
Недостаток этого способа по сравнениею с (2) - задаются ip, а не доменные адреса для разблокировки. Со временем ip могут и измениться - этот можно обойти, написав скрипт, обновляющий config файл bird. Впрочем это тема другого поста.