Bloklamadan yan keçmək üçün BGP qurmaq və ya "Mən necə qorxmağı dayandırdım və RKN-ə aşiq oldum"

Yaxşı, "aşiq oldum" haqqında şişirtmədir. Əksinə, "birlikdə mövcud ola bilər".

Bildiyiniz kimi, 16 aprel 2018-ci il tarixindən etibarən Roskomnadzor şəbəkədəki resurslara girişi son dərəcə geniş vuruşlarla bloklayır, domen adlarının Vahid Reyestrinə əlavə edir, İnternetdəki saytların səhifələrinə göstəricilər və şəbəkə ünvanları. İnternetdə Rusiya Federasiyasında yayılması qadağan edilən məlumatları ehtiva edən saytları müəyyənləşdirin” (mətndə - sadəcə reyestr) /10 bəzən. Nəticədə, Rusiya Federasiyasının vətəndaşları və müəssisələr ehtiyac duyduqları tamamilə qanuni resurslara çıxışını itirərək əziyyət çəkirlər.

Habré-dəki məqalələrdən birinə şərhlərdə zərərçəkənlərə yan keçid sxeminin qurulmasında kömək etməyə hazır olduğumu söylədikdən sonra bir neçə nəfər mənimlə əlaqə saxlayıb belə kömək istədi. Hər şey onlar üçün işlədikdə, onlardan biri texnikanı məqalədə təsvir etməyi tövsiyə etdi. Düşündükdən sonra saytdakı səssizliyimi pozmağa qərar verdim və bir dəfə layihə ilə Facebook-da bir yazı arasında aralıq bir şey yazmağa çalışdım, yəni. habrapost. Nəticə qarşınızdadır.

Məsuliyyətdən imtina

Rusiya Federasiyasının ərazisində qadağan olunmuş məlumatlara girişin qarşısını almaq yollarını dərc etmək çox qanuni olmadığı üçün bu məqalənin məqsədi ərazidə icazə verilən resurslara girişi avtomatlaşdırmağa imkan verən bir üsul haqqında danışmaq olacaq. Rusiya Federasiyasının, lakin kiminsə hərəkətləri səbəbindən birbaşa provayderiniz vasitəsilə əlçatmazdır. Məqalədən hərəkətlər nəticəsində əldə edilən digər mənbələrə giriş uğursuz bir yan təsirdir və heç bir halda məqalənin məqsədi deyil.

Həmçinin, mən ilk növbədə peşə, peşə və həyat yolu ilə şəbəkə memarı olduğum üçün proqramlaşdırma və Linux mənim güclü tərəflərim deyil. Buna görə də təbii ki, skriptləri daha yaxşı yazmaq, VPS-də təhlükəsizlik məsələlərini daha dərindən işləmək və s. Təklifləriniz minnətdarlıqla qəbul ediləcək, əgər kifayət qədər təfərrüatlı olsalar - onları məqalənin mətninə əlavə etməkdən məmnun olaram.

TL; DR

Biz reyestr surətindən və BGP protokolundan istifadə edərək mövcud tuneliniz vasitəsilə resurslara girişi avtomatlaşdırırıq. Məqsəd bloklanmış resurslara ünvanlanan bütün trafiki tunelə çıxarmaqdır. Minimum izahat, əsasən addım-addım təlimatlar.

Bunun üçün nə lazımdır

Təəssüf ki, bu yazı hər kəs üçün deyil. Bu texnikadan istifadə etmək üçün bir neçə elementi birləşdirməlisiniz:

  1. Bloklama sahəsindən kənarda linux serveriniz olmalıdır. Və ya heç olmasa belə bir serveri işə salmaq arzusu - çünki indi onun qiyməti ildə 9 dollardan və bəlkə də daha azdır. Metod ayrıca VPN tuneliniz varsa uyğundur, onda server blok sahəsinin içərisində yerləşə bilər.
  2. Routeriniz bunu edə biləcək qədər ağıllı olmalıdır
    • bəyəndiyiniz hər hansı VPN müştərisi (mən OpenVPN-ə üstünlük verirəm, lakin bu, PPTP, L2TP, GRE+IPSec və tunel interfeysi yaradan hər hansı digər seçim ola bilər);
    • BGPv4 protokolu. Bu o deməkdir ki, SOHO üçün Mikrotik və ya Quagga və ya Bird quraşdırmanıza imkan verən OpenWRT/LEDE/oxşar xüsusi proqram təminatı ilə hər hansı bir marşrutlaşdırıcı ola bilər. PC yönləndiricisinin istifadəsi də qadağan edilmir. Müəssisə üçün BGP dəstəyi üçün sərhəd marşrutlaşdırıcınız üçün sənədlərə baxın.
  3. Siz BGP daxil olmaqla, Linux istifadəsi və şəbəkə texnologiyaları ilə tanış olmalısınız. Və ya heç olmasa bu fikri əldə etmək istəyirəm. Bu dəfə nəhəngliyi qəbul etməyə hazır olmadığım üçün, sizin üçün anlaşılmaz olan bəzi məqamları təkbaşına öyrənməli olacaqsınız. Bununla belə, mən, əlbəttə ki, şərhlərdə konkret suallara cavab verəcəyəm və çətin ki, tək cavab verəcəm, ona görə də soruşmaqdan çəkinməyin.

Nümunədə nə istifadə olunur

  • Reyestrinin surəti https://github.com/zapret-info/z-i 
  • VPS - Ubuntu 16.04
  • Marşrut xidməti - quş 1.6.3   
  • Router - Mikrotik hAP ac
  • İş qovluqları - biz kök kimi işlədiyimiz üçün hər şeyin çoxu kök ev qovluğuna yerləşdiriləcək. Müvafiq olaraq:
    • /root/blacklist - kompilyasiya skripti ilə işləyən qovluq
    • /root/zi - github-dan reyestrin surəti
    • /etc/bird - standart quş xidməti parametrləri qovluğu
  • 194.165.22.146, ASN 64998-i marşrutlaşdırma serveri və tunelin son nöqtəsi ilə VPS-nin xarici IP ünvanı kimi qəbul edirik; marşrutlaşdırıcının xarici IP ünvanı - 81.177.103.94, ASN 64999
  • Tunel daxilində IP ünvanları müvafiq olaraq 172.30.1.1 və 172.30.1.2-dir.

Bloklamadan yan keçmək üçün BGP qurmaq və ya "Mən necə qorxmağı dayandırdım və RKN-ə aşiq oldum"

Əlbəttə ki, hər hansı digər marşrutlaşdırıcılardan, əməliyyat sistemlərindən və proqram məhsullarından istifadə edə bilərsiniz, həlli onların məntiqinə uyğunlaşdıra bilərsiniz.

Qısaca - həllin məntiqi

  1. Hazırlıq işləri
    1. VPS əldə etmək
    2. Tuneli marşrutlaşdırıcıdan VPS-ə qaldırırıq
  2. Reyestr nüsxəsinin əldə edilməsi və mütəmadi olaraq yenilənməsi
  3. Marşrutlaşdırma xidmətinin quraşdırılması və konfiqurasiyası
  4. Reyestr əsasında marşrutlaşdırma xidməti üçün statik marşrutların siyahısını yaradın
  5. Routeri xidmətə qoşuruq və tunel vasitəsilə bütün trafikin göndərilməsini qururuq.

Həqiqi qərar

Hazırlıq işləri

Şəbəkənin genişliyində son dərəcə məqbul pul üçün VPS təmin edən bir çox xidmət var. İndiyə qədər mən ildə 9 dollarlıq seçim tapdım və istifadə etdim, amma həqiqətən narahat olmasanız belə, hər küncdə 1E/ay üçün çoxlu seçim var. VPS seçmək məsələsi bu məqalənin əhatə dairəsindən çox kənardadır, buna görə də kiməsə bu barədə bir şey aydın deyilsə, şərhlərdə soruşun.

VPS-dən yalnız marşrutlaşdırma xidməti üçün deyil, həm də üzərindəki tuneli dayandırmaq üçün istifadə edirsinizsə, bu tuneli qaldırmalı və demək olar ki, birmənalı olaraq bunun üçün NAT-ı konfiqurasiya etməlisiniz. Bu hərəkətlər üçün şəbəkədə çoxlu sayda təlimat var, onları burada təkrarlamayacağam. Belə bir tunel üçün əsas tələb odur ki, o, marşrutlaşdırıcınızda VPS-ə doğru tuneli dəstəkləyən ayrıca interfeys yaratmalıdır. Ən çox istifadə olunan VPN texnologiyaları bu tələbə cavab verir - məsələn, tun rejimində OpenVPN yaxşıdır.

Reyestrinin surətini alın

Cəbrayıl demişkən, “Bizə mane olan bizə kömək edər”. RKN qadağan olunmuş resursların reyestrini yaratdığı üçün problemimizi həll etmək üçün bu reyestrdən istifadə etməmək günah olardı. Biz github-dan reyestrin surətini alacağıq.

Linux serverinizə gedirik, kökün kontekstinə düşürük (sudo su-) və artıq quraşdırılmayıbsa git quraşdırın.

apt install git

Ev kataloqunuza gedin və qeyd dəftərinin bir nüsxəsini çıxarın.

cd ~ && git clone --depth=1 https://github.com/zapret-info/z-i 

Cron yeniləməsini qurun (məndə hər 20 dəqiqədən bir var, ancaq sizi maraqlandıran istənilən intervalı seçə bilərsiniz). Bunu etmək üçün qaçırıq crontab-e və ona aşağıdakı sətir əlavə edin:

*/20 * * * * cd ~/z-i && git pull && git gc

Reyestrini yenilədikdən sonra marşrutlaşdırma xidməti üçün fayllar yaradacaq bir çəngəl bağlayırıq. Bunun üçün bir fayl yaradırıq /root/zi/.git/hooks/post-merge aşağıdakı məzmunla:

#!/usr/bin/env bash
changed_files="$(git diff-tree -r --name-only --no-commit-id ORIG_HEAD HEAD)"
check_run() {
    echo "$changed_files" | grep --quiet "$1" && eval "$2"
}
check_run dump.csv "/root/blacklist/makebgp"

və onu icra edilə bilən hala gətirməyi unutmayın

chmod +x /root/z-i/.git/hooks/post-merge

Qarmaq tərəfindən istinad edilən makebgp skripti daha sonra yaradılacaq.

Marşrutlaşdırma xidmətinin quraşdırılması və konfiqurasiyası

Quş quraşdırın. Təəssüf ki, Ubuntu anbarlarında quşun hazırda nəşr edilmiş versiyası təravət baxımından Archaeopteryx-in nəcisi ilə müqayisə edilə bilər, ona görə də əvvəlcə sistemə proqram tərtibatçılarının rəsmi PPA-nı əlavə etməliyik.

add-apt-repository ppa:cz.nic-labs/bird
apt update
apt install bird

Bundan sonra biz dərhal quşu IPv6 üçün söndürürük - bu quraşdırmada bizə ehtiyac olmayacaq.

systemctl stop bird6
systemctl disable bird6

Aşağıda quş xidməti üçün minimalist konfiqurasiya faylı (/etc/bird/bird.conf), bu bizim üçün kifayət qədərdir (və bir daha xatırladıram ki, heç kim ideyanı öz ehtiyaclarınıza uyğun inkişaf etdirməyi və tənzimləməyi qadağan etmir)

log syslog all;
router id 172.30.1.1;

protocol kernel {
        scan time 60;
        import none;
#       export all;   # Actually insert routes into the kernel routing table
}

protocol device {
        scan time 60;
}

protocol direct {
        interface "venet*", "tun*"; # Restrict network interfaces it works with
}

protocol static static_bgp {
        import all;
        include "pfxlist.txt";
        #include "iplist.txt";
}

protocol bgp OurRouter {
        description "Our Router";
        neighbor 81.177.103.94 as 64999;
        import none;
        export where proto = "static_bgp";
        local as 64998;
        passive off;
        multihop;
}

router id - marşrutlaşdırıcı identifikatoru, vizual olaraq IPv4 ünvanına bənzəyir, lakin belə deyil. Bizim vəziyyətimizdə bu, IPv32 ünvan formatında istənilən 4 bitlik nömrə ola bilər, lakin orada cihazınızın IPv4 ünvanını (bu halda VPS) təyin etmək yaxşı təcrübədir.

birbaşa protokol marşrutlaşdırma prosesi ilə hansı interfeyslərin işləyəcəyini müəyyən edir. Nümunə bir neçə ad nümunəsi verir, daha çox əlavə edə bilərsiniz. Siz həmçinin sadəcə xətti silə bilərsiniz, bu halda server IPv4 ünvanı ilə bütün mövcud interfeyslərə qulaq asacaq.

Protocol static, sonradan elan etmək üçün fayllardan prefikslərin və ip ünvanlarının (əlbəttə ki, /32 prefiksdir) siyahılarını yükləyən sehrimizdir. Bu siyahıların haradan gəldiyi aşağıda müzakirə olunacaq. Nəzərə alın ki, IP ünvanlarının yüklənməsi standart olaraq şərh olunur, bunun səbəbi yüklənmənin çox olmasıdır. Müqayisə üçün bildirək ki, məqaləni yazarkən prefikslər siyahısında 78 sətir, ip ünvanlar siyahısında isə 85898 sətir var.Mən sizə yalnız prefikslər siyahısında başlamağınızı və debug etməyinizi, qərar verib-verməməyinizi tövsiyə edirəm. marşrutlaşdırıcınızla sınaqdan keçirdikdən sonra gələcəkdə ip yükləməsini aktivləşdirmək üçün. Onların hər biri marşrut cədvəlindəki 85 min girişi asanlıqla həzm edə bilmir.

bgp protokolu əslində marşrutlaşdırıcınızla bgp peinqini qurur. ip-ünvanı marşrutlaşdırıcının xarici interfeysinin ünvanıdır (və ya marşrutlaşdırıcının tərəfdən tunel interfeysinin ünvanı), 64998 və 64999 avtonom sistemlərin nömrələridir. Bu halda, onlar istənilən 16 bitlik nömrələr şəklində təyin edilə bilər, lakin RFC6996 - 64512-65534 daxil olmaqla müəyyən edilmiş şəxsi diapazondan AS nömrələrindən istifadə etmək yaxşı təcrübədir (32 bitlik ASN formatı var, lakin bizim vəziyyətimizdə bu, mütləq həddindən artıqdır). Təsvir edilən konfiqurasiya eBGP peinqindən istifadə edir, burada marşrutlaşdırma xidmətinin və marşrutlaşdırıcının avtonom sistem nömrələri fərqli olmalıdır.

Gördüyünüz kimi, xidmət marşrutlaşdırıcının IP ünvanını bilməlidir, buna görə də dinamik və ya marşrutlaşdırıla bilməyən şəxsi (RFC1918) və ya paylaşılan (RFC6598) ünvanınız varsa, xarici interfeysdə baxışı artırmaq üçün heç bir seçiminiz yoxdur, lakin xidmət hələ də tunelin içərisində işləyəcək.

Bir xidmətdən marşrutlarla bir neçə fərqli marşrutlaşdırıcı təmin edə biləcəyiniz də olduqca şəffafdır - qonşunun IP ünvanını dəyişdirərək protokolun bgp bölməsini kopyalayaraq onlar üçün parametrləri təkrarlayın. Buna görə nümunə tuneldən kənarda baxmaq üçün parametrləri ən universal kimi göstərir. Parametrlərdə IP ünvanlarını müvafiq olaraq dəyişdirərək onları tunelə çıxarmaq çətin deyil.

Marşrutlaşdırma Xidməti üçün Reyestr Emalı

İndi bizə, əslində, statik protokolun əvvəlki addımında qeyd olunan prefikslərin və ip-ünvanların siyahılarını yaratmalıyıq. Bunun üçün registr faylını götürürük və ondan lazım olan faylları aşağıda yerləşən aşağıdakı skriptlə çıxarırıq. /root/qara siyahı/makebgp

#!/bin/bash
cut -d";" -f1 /root/z-i/dump.csv| tr '|' 'n' |  tr -d ' ' > /root/blacklist/tmpaddr.txt
cat /root/blacklist/tmpaddr.txt | grep / | sed 's_.*_route & reject;_' > /etc/bird/pfxlist.txt
cat /root/blacklist/tmpaddr.txt | sort | uniq | grep -Eo "([0-9]{1,3}[.]){3}[0-9]{1,3}" | sed 's_.*_route &/32 reject;_' > /etc/bird/iplist.txt
/etc/init.d/bird reload
logger 'bgp list compiled'

Onu icra edilə bilən hala gətirməyi unutmayın

chmod +x /root/blacklist/makebgp

İndi siz onu əl ilə işlədə və /etc/bird-də faylların görünüşünü müşahidə edə bilərsiniz.

Çox güman ki, bu anda quş sizin üçün işləmir, çünki əvvəlki mərhələdə siz hələ mövcud olmayan faylları axtarmağı təklif etdiniz. Beləliklə, biz onu işə salırıq və başlamasına nəzarət edirik:

systemctl start bird
birdc show route

İkinci əmrin çıxışı təxminən 80 girişi göstərməlidir (bu hazırdadır və siz onu qurduğunuz zaman hər şey ILV-nin bloklama şəbəkələrindəki canfəşanlığından asılı olacaq):

54.160.0.0/12      unreachable [static_bgp 2018-04-19] * (200)

Komanda

birdc show protocol

xidmət daxilindəki protokolların vəziyyətini göstərəcək. Siz marşrutlaşdırıcını konfiqurasiya edənə qədər (növbəti paraqrafa baxın), OurRouter protokolu başlanğıc vəziyyətində olacaq (Qoşulma və ya Aktiv fazalar) və uğurlu qoşulmadan sonra yuxarı vəziyyətə keçəcək (Qurulma mərhələsi). Məsələn, mənim sistemimdə bu əmrin çıxışı belə görünür:

BIRD 1.6.3 ready.
name     proto    table    state  since       info
kernel1  Kernel   master   up     2018-04-19
device1  Device   master   up     2018-04-19
static_bgp Static   master   up     2018-04-19
direct1  Direct   master   up     2018-04-19
RXXXXXx1 BGP      master   up     13:10:22    Established
RXXXXXx2 BGP      master   up     2018-04-24  Established
RXXXXXx3 BGP      master   start  2018-04-22  Connect       Socket: Connection timed out
RXXXXXx4 BGP      master   up     2018-04-24  Established
RXXXXXx5 BGP      master   start  2018-04-24  Passive

Router bağlantısı

Yəqin ki, hər kəs bu ayaq örtüyünü oxumaqdan artıq yorulub, amma ürəklənsin - son yaxındır. Üstəlik, bu bölmədə addım-addım təlimat verə bilməyəcəm - hər bir istehsalçı üçün fərqli olacaq.

Bununla belə, sizə bir neçə misal göstərə bilərəm. Əsas məntiq BGP peeringini yüksəltmək və tunelimizə (əgər p2p interfeysi vasitəsilə trafik çıxarmaq lazımdırsa) və ya trafik ethernetə gedirsə Nexthop ip-ünvanına işarə edərək bütün qəbul edilmiş prefikslərə nexthop əlavə etməkdir.

Məsələn, RouterOS-da Mikrotik-də bu aşağıdakı kimi həll olunur

/routing bgp instance set default as=64999 ignore-as-path-len=yes router-id=172.30.1.2
/routing bgp peer add in-filter=dynamic-in multihop=yes name=VPS remote-address=194.165.22.146 remote-as=64998 ttl=default
/routing filter add action=accept chain=dynamic-in protocol=bgp comment="Set nexthop" set-in-nexthop=172.30.1.1

və Cisco IOS-da - bu kimi

router bgp 64999
  neighbor 194.165.22.146 remote-as 64998
  neighbor 194.165.22.146 route-map BGP_NEXT_HOP in
  neighbor 194.165.22.146 ebgp-multihop 250
!
route-map BGP_NEXT_HOP permit 10
  set ip next-hop 172.30.1.1

Eyni tunel həm BGP peering üçün, həm də faydalı trafikin ötürülməsi üçün istifadə edildiyi təqdirdə, Nexthop-u təyin etmək lazım deyil, protokol vasitəsilə düzgün qurulacaq. Ancaq onu əl ilə təyin etsəniz, daha da pisləşməyəcək.

Digər platformalarda konfiqurasiyanı özünüz anlamalı olacaqsınız, lakin hər hansı bir çətinlik varsa, şərhlərdə yazın, kömək etməyə çalışacağam.

BGP sessiyanız yüksəldikdən, böyük şəbəkələrə marşrutlar çatdıqdan və cədvəldə quraşdırıldıqdan, onlardan ünvanlara gedən trafik getdikdən və xoşbəxtlik yaxınlaşdıqdan sonra siz quş xidmətinə qayıdıb oradakı şəbəkəni birləşdirən girişi şərhdən çıxarmağa cəhd edə bilərsiniz. ip ünvanlarının siyahısı, bundan sonra icra edin

systemctl reload bird

və marşrutlaşdırıcınızın bu 85 min marşrutu necə köçürdüyünə baxın. Onu söndürməyə hazır olun və onunla nə edəcəyinizi düşünün 🙂

Ümumi

Sırf nəzəri olaraq, yuxarıda göstərilən addımları yerinə yetirdikdən sonra, trafiki avtomatik olaraq filtrləmə sistemindən keçmiş Rusiya Federasiyasında qadağan edilmiş IP ünvanlarına yönləndirən bir xidmətiniz var.

Bu, əlbəttə ki, təkmilləşdirilə bilər. Məsələn, perl və ya python həlləri vasitəsilə ip ünvanlarının siyahısını ümumiləşdirmək kifayət qədər asandır. Bunu Net::CIDR::Lite ilə edən sadə perl skripti 85 min prefiksi 60-a (min yox) çevirir, lakin təbii olaraq bloklanandan daha böyük ünvan diapazonunu əhatə edir.

Xidmət ISO / OSI modelinin üçüncü səviyyəsində fəaliyyət göstərdiyindən, reyestrdə qeyd olunan ünvana çatmasa, sizi saytın/səhifənin bloklanmasından xilas etməyəcək. Lakin github-dan reyestrlə yanaşı, nxdomain.txt faylı da gəlir ki, bu da bir neçə skript vuruşu ilə asanlıqla, məsələn, Chrome-da SwitchyOmega plagininin ünvan mənbəyinə çevrilir.

Onu da qeyd etmək lazımdır ki, yalnız İnternet istifadəçisi deyilsinizsə, həm də özünüzdən bəzi resursları dərc edirsinizsə (məsələn, veb-sayt və ya poçt serveri bu bağlantıda işləyirsə) həll əlavə kəskinləşdirmə tələb edir. Router vasitəsi ilə siz bu xidmətdən ümumi ünvanınıza gedən trafiki sərt şəkildə bağlamalısınız, əks halda siz marşrutlaşdırıcının qəbul etdiyi prefikslərin siyahısı ilə əhatə olunan resurslarla əlaqəni itirəcəksiniz.

Hər hansı bir sualınız varsa - soruşun, cavab verməyə hazırsınız.

UPD. Çox sağ ol naviqasiya и TerAnYu yükləmə həcmini azaltmaq üçün git üçün seçimlər üçün.

UPD2. Həmkarlar, deyəsən məqaləyə VPS və marşrutlaşdırıcı arasında tunel qurmaq üçün göstərişlər əlavə etməməklə səhv etmişəm. Çoxlu suallar bu səbəbdən yaranır.
Hər halda, bir daha qeyd edirəm - güman edilir ki, bu təlimatdakı addımlara başlamazdan əvvəl VPN tunelini sizə lazım olan istiqamətdə konfiqurasiya etmisiniz və onun işini yoxladınız (məsələn, orada trafikin standart və ya statik olaraq bağlanması). Bu mərhələni hələ tamamlamamısınızsa, məqalədəki addımları izləməyin mənası yoxdur. Bununla bağlı mənim hələ öz mətnim yoxdur, lakin VPS-də quraşdırılmış əməliyyat sisteminin adı ilə birlikdə “OpenVPN server quraşdırması” və marşrutlaşdırıcınızın adı ilə “OpenVPN klient quraşdırması”nı google-a daxil etsəniz, çox güman ki, siz Habré də daxil olmaqla bu mövzuda bir sıra məqalələr tapa bilərsiniz.

UPD3. Qurbansız dump.csv-dən bird üçün nəticələnən faylı ip ünvanlarının isteğe bağlı cəmlənməsi ilə edən kod yazdı. Buna görə də, "Marşrutlaşdırma xidməti üçün reyestr işlənməsi" bölməsi onun proqramına zənglə əvəz edilə bilər. https://habr.com/post/354282/#comment_10782712

UPD4. Səhvlər üzərində bir az iş (mətndə iştirak etmədi):
1) əvəzinə systemctl quşunu yenidən yükləyin əmrindən istifadə etməyin mənası var birdc konfiqurasiyası.
2) Mikrotik marşrutlaşdırıcıda, növbəti keçidi tunelin ikinci tərəfinin IP-yə dəyişdirmək əvəzinə /marşrutlama filtri əlavə et=zəncirini qəbul et=dinamik-in protokolu=bgp comment="Nexthop-u təyin et" set-in-nexthop=172.30.1.1 marşrutu ünvan olmadan birbaşa tunel interfeysinə təyin etməyin mənası var /marşrutlaşdırma filtri əlavə et=zəncirini qəbul et=dinamik-in protokolu=bgp comment="Nexthop-u təyin et" set-in-nexthop-direct=<interfeys adı>

UPD5. Yeni xidmət gəldi https://antifilter.download, ip ünvanlarının hazır siyahılarını haradan götürə bilərsiniz. Hər yarım saatdan bir yenilənir. Müştəri tərəfində, yalnız müvafiq "marşrut ... rədd" ilə girişləri çərçivəyə salmaq qalır.
Və bu, yəqin ki, nənəmi silkələmək və məqaləni yeniləmək üçün kifayətdir.

UPD6. Anlamaq istəməyən, lakin başlamaq istəyənlər üçün məqalənin yenidən işlənmiş versiyası - burada.

Mənbə: www.habr.com

Добавить комментарий