ProHoster > Blog > Pulega > Faʻatulaga le BGP e faʻafefe ai le poloka, poʻo le "Faʻafefea ona ou le fefe ma ou alofa i le RKN"
Faʻatulaga le BGP e faʻafefe ai le poloka, poʻo le "Faʻafefea ona ou le fefe ma ou alofa i le RKN"
Ia, lelei, e uiga i le "alofagia" o se faʻateleina. Nai lo o lea, “sa mafai ona ola faatasi ma.”
E pei ona e iloa uma, talu mai Aperila 16, 2018, Roskomnadzor na poloka le avanoa i punaoa i luga o le Initaneti i le lautele lautele, faʻaopoopo i le "Resitala Faʻatasi o igoa ole igoa, itulau faasino igoa o nofoaga i luga ole Initaneti ma tuatusi fesoʻotaʻiga e mafai ai ona iloa nofoaga. luga ole Initaneti," o loʻo i ai faʻamatalaga e faʻasaina le tufatufaina atu i le Russian Federation" (i le tusitusiga - naʻo se resitala) e /10 i nisi taimi. O se taunuuga, o tagatanuu o le Russian Federation ma pisinisi o loʻo mafatia, ua le maua le avanoa i punaoa faʻaletulafono atoatoa latou te manaʻomia.
Ina ua uma ona ou fai atu i faʻamatalaga i se tasi o tala i luga o Habré ua ou sauni e fesoasoani i tagata na afaina i le faʻatulagaina o se polokalame e ala i le pasi, e toʻatele tagata na o mai ia te aʻu e fesili mo sea fesoasoani. Ina ua aoga mea uma mo i latou, o se tasi oi latou na fautuaina le faamatalaina o le metotia i se tusiga. Ina ua uma ni mafaufauga, sa ou filifili e momotu loʻu le leoa i luga o le saite ma taumafai mo le taimi e tasi e tusi se mea i le va o se poloketi ma se Facebook post, i.e. habrapost. O le taunuuga o loʻo i ou luma.
Tuuese
Talu ai e le o se tulafono tele le lolomiina o auala e faʻafefe ai le polokaina o avanoa i faʻamatalaga faʻasaina i luga o le teritori o le Russian Federation, o le faʻamoemoe o lenei tusiga o le a talanoa e uiga i se metotia e mafai ai e oe ona faʻaogaina le mauaina o avanoa i punaoa e faʻatagaina i luga o le teritori o le Russian Federation, ae ona o gaioiga a se isi tagata e le mafai ona maua saʻo e ala i lau kamupani. Ma o le avanoa i isi punaoa na maua o se taunuuga o gaioiga mai le tusiga o se itu le manuia ma e leai se faʻamoemoega o le tusiga.
E le gata i lea, talu ai o aʻu o se tufuga fesoʻotaʻiga i galuega, galuega ma le olaga, polokalame ma Linux e le o oʻu malosi. O le mea lea, o le mea moni, e mafai ona sili atu ona tusia tusitusiga, mataupu saogalemu i VPS e mafai ona sili atu ona loloto, ma isi. O au fautuaga o le a talia ma le faʻafetai, pe afai e lava faʻamatalaga - o le a ou fiafia e faʻaopoopo i latou i le tusiga o le tusiga.
TL; AMA
Matou te otometi le avanoa i punaoa e ala i lau alalaupapa o loʻo iai e faʻaaoga ai se kopi o le resitala ma le BGP protocol. O le faʻamoemoe o le aveese uma o fefaʻatauaiga o loʻo tuʻuina atu i punaoa poloka i totonu o le alavai. Fa'amatalaga la'ititi, tele fa'atonuga ta'itasi.
O le a le mea e te manaʻomia mo lenei mea?
Ae paga lea, o lenei pou e le mo tagata uma. Ina ia faʻaaogaina lenei metotia, e te manaʻomia le tuʻufaʻatasia o ni elemene:
E tatau ona i ai sau server linux i fafo atu o le poloka poloka. Po'o le mea sili o le mana'o ia i ai se 'au'aunaga fa'apea - e laki ua tau nei mai le $9/tausaga, ma atonu e itiiti. E talafeagai foi le auala pe afai e iai sau alalaupapa VPN ese, ona mafai lea ona tuʻu le 'auʻaunaga i totonu o le poloka poloka.
O lau router e tatau ona lava le atamai e mafai ai
soʻo se tagata VPN e te manaʻo i ai (Ou te fiafia i le OpenVPN, ae mafai ona avea ma PPTP, L2TP, GRE + IPSec poʻo soʻo se isi lava filifiliga e fatuina ai se fesoʻotaʻiga tunnel);
BGPv4 protocol. O lona uiga mo SOHO e mafai ona avea ma Mikrotik poʻo soʻo se alalaupapa ma OpenWRT / LEDE / faʻapitoa faʻapitoa faʻapitoa e mafai ai ona e faʻapipiʻi Quagga poʻo Bird. E le fa'asāina fo'i le fa'aogaina o se ta'avale PC. I le tulaga o se atinaʻe, suʻe le lagolago a le BGP i faʻamaumauga mo lau router tuaoi.
E tatau ona i ai sou malamalama i le faʻaogaina o Linux ma fesoʻotaʻiga tekonolosi, e aofia ai le BGP protocol. Po o le mea sili e manaʻo e maua sea manatu. Talu ai ou te leʻi sauni e talia le tele o lenei taimi, e tatau ona e suʻesuʻeina nisi o vaega e le mafai ona e malamalama i ai na o oe. Ae ui i lea, o le a ou, ioe, tali fesili faʻapitoa i faʻamatalaga ma e foliga mai e le naʻo aʻu le tali, o lea aua le faatuai e fesili.
O le a le mea o loʻo faʻaaogaina i le faʻataʻitaʻiga
Galue faila - talu ai o loʻo matou galulue e pei o aʻa, o le tele o mea uma o le a tuʻuina i totonu o le pusa fale aʻa. E fa'apea:
/root/blacklist - o loʻo galue le faila ma le faʻasologa o tusitusiga
/root/zi - kopi o le resitala mai github
/etc/bird - faila masani mo le faʻatulagaina o le tautua manu
O le tuatusi IP i fafo o le VPS faʻatasi ai ma le faʻaogaina o le server ma le tunnel faʻamutaina o le 194.165.22.146, ASN 64998; tuatusi IP fafo o le router - 81.177.103.94, ASN 64999
O tuatusi IP i totonu o le alavai o le 172.30.1.1 ma le 172.30.1.2.
Ioe, e mafai ona e faʻaogaina soʻo se isi alalaupapa, faiga faʻaogaina ma oloa faʻapipiʻi, fetuutuunai le fofo i latou manatu.
Fa'apuupuu - o le manatu o le fofo
Galuega sauniuni
Maua se VPS
Siitia se alavai mai le router i le VPS
Matou te mauaina ma fa'afouina e le aunoa se kopi o le resitala
Fa'apipi'i ma fa'atulaga le 'au'aunaga fa'aala
Matou te fatuina se lisi o auala faʻapitoa mo le auaunaga faʻatautaia e faʻavae i luga o le resitala
Matou te faʻafesoʻotaʻi le router i le 'auʻaunaga ma faʻapipiʻi le tuʻuina atu o fefaʻatauaiga uma i le alavai.
Ole fofo moni
Galuega sauniuni
E tele 'au'aunaga i luga ole Initaneti e maua ai VPS mo tau sili ona talafeagai. I le taimi nei ua ou mauaina ma o loʻo ou faʻaogaina le filifiliga mo le $ 9 / tausaga, ae tusa lava pe e te le faʻalavelave tele, e tele filifiliga mo 1E / masina i tulimanu uma. O le fesili o le filifilia o se VPS o loʻo taoto i tua atu o le lautele o lenei tusiga, o lea afai e le malamalama se tasi i se mea e uiga i lenei mea, fesili i faʻamatalaga.
Afai e te faʻaogaina se VPS e le gata mo le taʻavale auaunaga, ae faʻamutaina foi se alavai i luga, e tatau ona e siiina lenei alavai ma, toetoe lava a mautinoa, faʻapipiʻi le NAT mo ia. O loʻo i ai le tele o faʻatonuga i nei gaioiga i luga ole Initaneti, ou te le toe faia iinei. O le manaʻoga autu mo sea alalaupapa e tatau ona fatuina se isi faʻaoga i luga o lau alalaupapa e lagolagoina le alavai agai i le VPS. Ole tele ole VPN fa'aoga tekonolosi e fetaui ma lenei mana'oga - mo se fa'ata'ita'iga, OpenVPN ile tun mode e atoatoa.
Maua se kopi o le resitala
E pei ona fai mai Iabrail, “O lē e faalavelave mai ia i tatou, e fesoasoani mai o ia ia i tatou.” Talu ai o le RKN o loʻo faia se tusi resitala o punaoa faʻasaina, o se agasala le faʻaaogaina o lenei tusi resitala e foia ai lo tatou faafitauli. O le a matou mauaina se kopi o le resitala mai le github.
Matou te alu i lau 'auʻaunaga Linux, pa'ū i totonu o le aʻa (sudo su -) ma faʻapipiʻi git pe afai e leʻi faʻapipiʻiina.
apt install git
Alu i lau lisi o fale ma toso mai se kopi o le resitala.
cd ~ && git clone --depth=1 https://github.com/zapret-info/z-i
Matou te setiina se faʻafouga cron (Ou te faia tasi i le 20 minute, ae e mafai ona e filifilia soʻo se vaeluaga e te fiafia i ai). Ina ia faia lenei mea matou te tatalaina crontab -e ma faaopoopo le laina lea i ai:
*/20 * * * * cd ~/z-i && git pull && git gc
Matou te faʻafesoʻotaʻi se matau e fatuina ai faila mo le faʻaogaina o le auaunaga pe a uma ona faʻafouina le resitala. Ina ia faia lenei mea, fai se faila /root/zi/.git/hooks/post-merge fa'atasi ai ma mea nei:
O le a matou fatuina le makebgp script lea e faasino i ai le matau i se taimi mulimuli ane.
Fa'apipi'i ma fa'atulaga se auaunaga fa'aala
Fa'apipi'i manu. Ae paga lea, o le lomiga o le manulele o loʻo faʻapipiʻi nei i totonu o faleoloa Ubuntu e faʻatusatusa i le fou i le Archeopteryx feces, o lea e tatau ai ona tatou faʻaopoopo muamua le PPA aloaia a le au atinaʻe polokalama i le polokalama.
A maeʻa lenei mea, matou vave faʻamalo le manulele mo IPv6 - matou te le manaʻomia i lenei faʻapipiʻi.
systemctl stop bird6
systemctl disable bird6
O loʻo i lalo se faila faʻapipiʻi auaunaga manu itiiti (/etc/bird/bird.conf), lea ua lava mo i matou (ma ou te toe faamanatu atu ia te oe e leai se tasi e faʻasaina le atinaʻeina ma le faʻaogaina o le manatu e fetaui ma ou lava manaʻoga)
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 - router identifier, lea e foliga mai o se tuatusi IPv4, ae e le tasi. I la matou tulaga, e mafai ona avea ma soʻo se numera 32-bit i le IPv4 faʻasologa o le tuatusi, ae o se faiga lelei e faʻaalia tonu le tuatusi IPv4 o lau masini (i lenei tulaga, VPS).
protocol tuusa'o fa'amalamalama po'o fea feso'ota'iga o le a fa'aogaina ma le fa'agasologa o auala. O le faʻataʻitaʻiga e tuʻuina atu ai ni faʻataʻitaʻiga igoa, e mafai ona e faʻaopoopoina isi. E mafai lava ona e tapeina le laina; i lenei tulaga, o le a faʻalogo le 'auʻaunaga i fesoʻotaʻiga avanoa uma ma se tuatusi IPv4.
protocol static o la tatou togafiti fa'ataulaitu e utaina lisi o prefixes ma tuatusi IP (o le mea moni /32 prefixes, ioe) mai faila mo faʻasalalauga mulimuli. O fea e sau ai nei lisi o le a talanoaina i lalo. Faamolemole ia matau o le utaina o tuatusi IP o loʻo faʻaalia e ala i le faaletonu, o le mafuaʻaga o lenei mea o le tele o le faʻapipiʻiina. Mo faʻatusatusaga, i le taimi o le tusitusi, o loʻo i ai laina 78 i le lisi o prefixes, ma le 85898 i le lisi o tuatusi IP. Ou te matua fautuaina e amata ma faʻapipiʻi naʻo luga o le lisi o prefixes, ma pe mafai pe leai foi le faʻaogaina o le IP i totonu. o le lumanaʻi e oʻo ia te oe e filifili pe a uma ona faʻataʻitaʻiina lau router. E le o latou uma e mafai ona faigofie ona suʻeina le 85 afe faʻamaumauga i le laulau faʻasolosolo.
protocol bgp, o le mea moni, seti le bgp peering ma lau router. O le tuatusi IP o le tuatusi o le fesoʻotaʻiga i fafo o le router (poʻo le tuatusi o le tunnel interface i le itu o le router), 64998 ma le 64999 o numera o faiga tutoʻatasi. I lenei tulaga, e mafai ona tuʻuina atu i latou i foliga o soʻo se numera 16-bit, ae o se faʻataʻitaʻiga lelei le faʻaogaina o numera AS mai le tulaga tumaoti faʻamatalaina e RFC6996 - 64512-65534 faʻatasi (o loʻo i ai se faatulagaga mo 32-bit ASNs, ae i la matou tulaga e mautinoa lava e sili atu lenei mea). O le faʻamatalaga faʻamatalaina e faʻaaogaina ai le eBGP peering, lea e tatau ona ese ai numera o faiga tutoʻatasi o le auaunaga faʻatautaia ma le router.
E pei ona mafai ona e vaʻai, e manaʻomia e le 'auʻaunaga ona iloa le tuatusi IP o le router, o lea afai o loʻo i ai sau tuatusi faʻapitoa poʻo le le mafai ona faʻaogaina (RFC1918) poʻo le faʻasoa (RFC6598), e leai sau filifiliga e sii aʻe ai le vaʻavaʻai i fafo. interface, ae o le a galue pea le auaunaga i totonu o le alavai.
E manino foi mai le tasi auʻaunaga e mafai ona e tuʻuina atu auala i le tele o taʻavale eseese - naʻo le faʻaluaina o tulaga mo i latou e ala i le kopiina o le protocol bgp vaega ma suia le tuatusi IP a le tuaoi. O le mafuaaga lena o le faʻataʻitaʻiga o loʻo faʻaalia ai tulaga mo le vaʻavaʻai i fafo atu o le alavai, e pei o le sili ona lautele. E faigofie ona aveese i latou i totonu o le alavai e ala i le suia o tuatusi IP i tulaga e tusa ai.
Fa'agasologa o le resitala mo le auaunaga fa'aala
O lenei, matou te manaʻomia, i le mea moni, e fai lisi o prefixes ma tuatusi IP, lea na taʻua i le protocol static i le tulaga muamua. Ina ia faia lenei mea, matou te ave le faila resitala ma fai faila matou te manaʻomia mai ai e faʻaaoga ai le tusitusiga nei, tuʻu i totonu /root/blacklist/makebgp
Ole taimi nei e mafai ona e faʻatautaia ma le lima ma mataʻituina foliga o faila ile /etc/bird.
E foliga mai, e le o galue le manulele mo oe i le taimi nei, aua i le taimi muamua na e talosagaina ai e suʻe faila e leʻi i ai. O le mea lea, matou te tatalaina ma siaki ua amata:
systemctl start bird
birdc show route
O le gaioiga o le poloaiga lona lua e tatau ona faʻaalia e uiga i le 80 faʻamaumauga (o le taimi nei, ae a e setiina, o mea uma o le a faʻalagolago i le maelega o le RKN i le polokaina o fesoʻotaʻiga) e pei o lenei:
o le a fa'aalia le tulaga o protocols i totonu o le 'au'aunaga. Seia oʻo ina e faʻatulagaina le alalaupapa (silasila i le isi vaega), o le OurRouter protocol o le a i le tulaga amata (Connect or Active phase), ma a maeʻa se fesoʻotaʻiga manuia o le a alu i le tulaga maualuga (Faʻavae vaega). Mo se faʻataʻitaʻiga, i luga o laʻu polokalama o le gaioiga o lenei poloaiga e pei o lenei:
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
Fa'afeso'ota'i se router
Masalo ua fiu tagata uma i le faitauina o lenei ie vae, ae ia outou loto – ua lata mai le iuga. E le gata i lea, i lenei vaega o le a le mafai ona ou tuʻuina atu taʻiala taʻitasi - o le a eseese mo tagata gaosi oloa taʻitasi.
Ae ui i lea, e mafai ona ou faʻaali atu ia te oe ni faʻataʻitaʻiga se lua. O le manatu autu o le siitia lea o le BGP peering ma tofia le nexthop i prefix uma na maua, faasino i la tatou alalaupapa (pe a manaʻomia le auina atu o fefaʻatauaiga e ala i le p2p interface) poʻo le tuatusi IP nexthop pe afai o le a alu le fefaʻatauaiga i le ethernet).
Mo se faʻataʻitaʻiga, i luga o Mikrotik i RouterOS o loʻo foia e pei ona taua i lalo
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
Afai e faʻaogaina le ala lava e tasi mo le BGP peering ma mo le faʻasalalauina o fefaʻatauaiga aoga, e le manaʻomia ona seti le nexthop; o le a faʻatulaga saʻo e faʻaaoga ai le protocol. Ae afai e te setiina ma le lima, o le a le faʻaleagaina foi.
I luga o isi faʻavae, e tatau ona e faʻavasegaina oe lava ia, ae afai ei ai ni ou faʻafitauli, tusi i faʻamatalaga, o le a ou taumafai e fesoasoani.
A maeʻa lau sauniga BGP, ua oʻo mai auala i fesoʻotaʻiga tetele ma faʻapipiʻi i luga o le laulau, ua tafe atu le taʻavale i tuatusi mai ia i latou ma ua latalata le fiafia, e mafai ona e toe foʻi i le auaunaga a le manulele ma taumafai e faʻamalo le ulufale iina e fesoʻotaʻi ai le lisi o tuatusi IP, faʻatino pe a uma lena
systemctl reload bird
ma vaʻai pe faʻafefea ona faʻafeiloaʻi e lau router nei 85 afe auala. Sauni e se'i ma mafaufau pe o le a le mea e fai i ai :)
Aofaʻi
O le mea moni, pe a maeʻa laasaga o loʻo faʻamatalaina i luga, o loʻo i ai nei sau auaunaga e otometi ona toe faʻafeiloaʻi fefaʻatauaiga i tuatusi IP faʻasaina i le Russian Federation i tua atu o le faʻaogaina o le faiga.
E mafai, ioe, ona faaleleia. Mo se faʻataʻitaʻiga, e faigofie tele le faʻapotopotoina o se lisi o tuatusi IP e faʻaaoga ai le perl poʻo le python solutions. O se tusitusiga Perl faigofie o loʻo faia lenei mea e faʻaaoga ai le Net :: CIDR :: Lite liliu 85 afe prefixes i le 60 (e le o le afe), ae, ioe, e aofia ai le tele o tuatusi o tuatusi nai lo le poloka.
Talu ai ona o le auaunaga o loʻo galue i le tulaga lona tolu o le ISO / OSI faʻataʻitaʻiga, o le a le faʻasaoina oe mai le polokaina o se saite / itulau pe afai e foia i le tuatusi sese e pei ona faamaumauina i le resitala. Ae faʻatasi ai ma le resitala, o le faila nxdomain.txt e sau mai le github, lea faʻatasi ai ma ni nai paʻu o le tusitusiga e faigofie ona liua i se punavai o tuatusi mo, mo se faʻataʻitaʻiga, le SwitchyOmega plugin i Chrome.
E tatau foi ona taʻua o le fofo e manaʻomia ai le faʻaleleia atili pe afai e le naʻo oe o se tagata faʻaoga Initaneti, ae faʻasalalau foi nisi o punaoa na o oe lava (mo se faʻataʻitaʻiga, o se upega tafaʻilagi poʻo se meli meli o loʻo faʻaogaina i lenei fesoʻotaʻiga). I le faʻaaogaina o auala a le router, e manaʻomia le faʻamauina o fefaʻatauaiga i fafo mai lenei auaunaga i lau tuatusi lautele, a leai o le ae leiloa le fesoʻotaʻiga ma na punaoa o loʻo ufiufi e le lisi o prefixes maua e le router.
Afai ei ai ni au fesili, fesili, ua ou sauni e tali.
UPD. Fa'afetai tautai и TerAnYu mo tapulaʻa mo git e mafai ai ona faʻaititia le tele o le download.
UPD2. Paʻaga, e foliga mai na ou faia se mea sese e ala i le le faʻaopoopoina o faʻatonuga mo le faʻatulagaina o se alavai i le va o le VPS ma le router i le tusiga. E tele fesili ua lāgā i lea tulaga.
I le tulaga lava, o le a ou toe matauina aʻo leʻi amataina lenei taʻiala, ua uma ona e faʻatulagaina se alalaupapa VPN i le itu e te manaʻomia ma siaki lona faʻatinoga (mo se faʻataʻitaʻiga, e ala i le liliuina o feoaiga iina e ala i le faaletonu poʻo le statically). Afai e te leʻi faʻamaeʻaina lenei vaega, e le talafeagai le mulimuli i laasaga i le tusiga. E leai sau lava tusitusiga i lenei mea, ae afai e te google "faʻatulagaina se OpenVPN server" faʻatasi ai ma le igoa o le faiga faʻaogaina faʻapipiʻi i luga o le VPS, ma "faʻatulagaina se OpenVPN client" ma le igoa o lau router. , e foliga mai o le ae mauaina le tele o tala i lenei mataupu, e aofia ai le Habré.
FAAFOUGA3. Le ositaulaga Na ou tusia se code e liliu ai le dump.csv i se faila e maua ai mo le manulele ma le faʻavasegaina o tuatusi IP. O le mea lea, o le vaega "Faʻatonuina le resitala mo le faʻaogaina o auaunaga" e mafai ona suia i le valaʻau i lana polokalame. https://habr.com/post/354282/#comment_10782712
UPD4. O sina galuega i luga o mea sese (Ou te leʻi faʻaopoopoina i le tusitusiga):
1) nai lo lena systemctl toe uta manu e talafeagai le faaaogaina o le poloaiga birdc configure.
2) i le router Mikrotik, nai lo le suia o le nexthop i le IP o le itu lona lua o le alavai /routing filter add action=accept chain=dynamic-in protocol=bgp comment=»Set nexthop»set-in-nexthop=172.30.1.1 e talafeagai le faʻamaoti saʻo o le auala i le tunnel interface, e aunoa ma se tuatusi /routing filter add action=accept chain=dynamic-in protocol=bgp comment=»Set nexthop» set-in-nexthop-direct=<igoa fa'aoga>
UPD5. Ua aliali mai se auaunaga fou https://antifilter.download, mai le mea e mafai ona e pikiina ai lisi ua saunia o tuatusi IP. Fa'afouina i afa itula uma. I le itu o le kalani, pau lava le mea o loʻo totoe o le faʻapipiʻiina o faʻamaumauga ma le "auala ... teena".
Ma i le taimi nei, masalo, ua lava le sasaina o lou tinamatua ma faʻafouina le tusiga.
UPD6. O se toe faʻafouina o le tusiga mo i latou e le manaʻo e mafaufau i ai, ae manaʻo e amata - iinei.