Tutorial
MikroTik PPPoE serveris ISP
Kaip nustatyti MikroTik PPPoE serverį ISP: IP telkiniai, PPP profiliai, secrets, rate limit ir nuotolinis abonentų valdymas už CGNAT.
Santrauka MikroTik PPPoE serveris leidžia ISP autentifikuoti abonentus, kiekvienam priskirti IP adresą ir taikyti greičio ribą pagal planą — viskas iš RouterOS, be išorinio RADIUS mažoms diegimo schemoms. Nustatymas yra trumpa, sutvarkyta grandinė: IP telkinys, PPP profilis, abonentų secrets, PPPoE paslauga ir NAT. Sunkesnė problema yra ne sukonfigūruoti vieną koncentratorių, o paleisti nuoseklią, patikrinamą konfigūraciją daugelyje jų — dažnai už CGNAT. Šis vadovas apima abu.

Kas Yra MikroTik PPPoE Serveris?
MikroTik PPPoE serveris yra RouterOS paslauga, kuri autentifikuoja kiekvieną abonentą per Point-to-Point Protocol over Ethernet, suteikia jam IP iš telkinio ir taiko profilį, valdantį jo šliuzą, DNS ir greičio ribą. Taip dauguma mažų ir vidutinių ISP valdo klientų ryšius: klientas prisijungia su naudotojo vardu ir slaptažodžiu, serveris patikrina kredencialą, o sesija paveldi priskirtą planą — autentifikacija pagal naudotoją, IP priskyrimas ir pralaidumo valdymas be atskiros įrangos (MikroTik dokumentacija — PPPoE).
PPPoE lieka ISP standartu dėl atskaitomybės. Kiekvienas abonentas turi individualų kredencialą, todėl galite išjungti paskyrą už neapmokėjimą, matyti, kas prisijungęs, ir susieti fiksuotą adresą ar greitį su asmeniu — nieko iš to švariai nesuteikia tilto ar DHCP pristatymas. Visa konfigūracija susiveda į vieną idėją: apibrėžkite planą kartą profilyje, o tada prie jo prijunkite abonentus.
1 žingsnis — Sukurkite IP telkinį
Pradėkite nuo adresų, kuriuos RouterOS skolins abonentams. Telkinys yra pavadintas blokas — pavyzdžiui /ip pool add name=pppoe-pool ranges=10.20.0.2-10.20.255.254 — pritaikytas vienalaikėms sesijoms, kurias neš šis koncentratorius, su atsarga. Laikykite profilio šliuzo adresą (t. y. local-address) už skolinamo diapazono ribų, kad jis niekada netyčia neatitektų klientui.
Pritaikykite telkinio dydį pagal aparatinę įrangą — kuklus maršrutizatorius susidoroja su šimtais sesijų, CCR klasės įrenginys su tūkstančiais (Tech@Layer-x — PPPoE Server on MikroTik for ISP Deployments). Kad vietoj to dalintumėte viešus IP, nukreipkite telkinį į savo maršrutizuojamą bloką ir praleiskite NAT 5 žingsnyje.
2 žingsnis — Sukurkite PPP profilį
PPP profilis yra vieta, kur gyvena planas. Jis nustato local-address (šliuzą, kurį mato kiekvienas abonentas), remote-address telkinį iš 1 žingsnio, DNS serverius ir — ISP svarbiausią — rate-limit, ribojantį kiekvieną sesiją. Priskirkite profilį abonentui, ir jis paveldi greitį, todėl „20/10“ planas yra vienas profilis, pakartotinai naudojamas tūkstančiuose paskyrų (madankc.com.np — MikroTik PPPoE Server Complete Setup Guide).
Viena detalė suklaidina beveik visus: kryptis. RouterOS skaito profilio rate-limit kaip rx-rate/tx-rate iš serverio perspektyvos — pirma abonento įkėlimas, paskui atsisiuntimas, atvirkščiai nei klientai apibūdina savo planą. Paketas „100 Mbps žemyn / 30 Mbps aukštyn“ rašomas rate-limit=30M/100M. Apverskite tai, ir kiekvienas klientas tyliai gauna sukeistą planą — būtent tą parko masto klaidą, kurią užkerta šabloninė konfigūracija.
3 žingsnis — Pridėkite abonentų secrets
Kiekvienam abonentui reikia „secret“ — naudotojo vardo, slaptažodžio ir profilio, apibrėžiančio jo planą, sukurto po /ppp secret. Mažai bazei tai yra visa naudotojų duomenų bazė: pridėkite secret kiekvienam klientui, pasirinktinai prisekite fiksuotą remote-address statiniam IP ir išjunkite secret, kad nutrauktumėte paslaugą. Tai ta pati atskaitomybė pagal kredencialą, kurią MikroTik User Manager išplečia hotspot abonentams, aptarta mūsų vadove apie 10.5.50.1 hotspot šliuzą ir User Manager.
Vietiniai secrets nustoja mastytis šimtų–tūkstančių diapazone, kur vieno maršrutizatoriaus redagavimas kiekvienam kliento pakeitimui tampa siaurąja vieta. Tame taške perkeliate autentifikaciją į išorinį RADIUS serverį, o koncentratoriai tiesiog klausia RADIUS, ar prisijungimas galioja — laikydami abonentų duomenų bazę vienoje vietoje.
4 žingsnis — Įjunkite PPPoE serverį prieigos sąsajoje
Dabar įjunkite paslaugą. Pridėkite PPPoE serverį su /interface pppoe-server server, susiekite jį su sąsaja, nukreipta į jūsų prieigos tinklą (prievadas, VLAN ar bridge), nustatykite jo default-profile į 2 žingsnio profilį ir pasirinkite autentifikacijos metodus — pap, chap arba mschap2. RouterOS tada atsako į PPPoE aptikimą toje sąsajoje ir autentifikuoja kiekvieną klientą, kuris prisijungia su galiojančiu secret.
Du nustatymai yra svarbūs masteliu. Parinktis one-session-per-host neleidžia abonentui atverti kelių vienalaikių sesijų, o max-mtu/max-mru turi būti nustatyti taip, kad PPPoE pridėtinės sąnaudos nefragmentuotų kliento srauto. Kur prieigos tinklas segmentuotas pagal klientą ar zoną, mūsų MikroTik bridge konfigūracijos vadovas apima 2 sluoksnio pagrindą, ant kurio serveris remiasi.
5 žingsnis — Pridėkite NAT ir ugniasienės taisykles
Jei 1 žingsnyje priskyrėte abonentams privačius adresus, jų srautui reikia transliacijos. Pridėkite masquerade taisyklę srcnat grandinėje, susietą su jūsų WAN išėjimo sąsaja, kad kiekviena PPPoE sesija pasiektų internetą — tie patys NAT pagrindai, aptarti mūsų vadove apie NAT konfigūravimą MikroTik. Jei išdalinote viešus IP, praleiskite masquerade ir maršrutizuokite bloką.
Tada apsaugokite koncentratorių. PPPoE paslauga turi būti pasiekiama abonentams, bet maršrutizatoriaus valdymo sąsajos — ne, todėl pridėkite ugniasienės taisykles, kurios atmeta Winbox, API ir WebFig prieigą iš abonentui nukreiptos pusės. Koncentratorius, nešantis realias kliento pajamas, yra būtent tas įrenginys, kurio nenorite padaryti pasiekiamo iš užgrobtos sesijos.
6 žingsnis — Nuotoliniu būdu valdykite ir patikrinkite parką
Štai dalis, kurią vieno maršrutizatoriaus vadovai praleidžia. Pastatyti PPPoE ant vienos mašinos lengva; paleisti identiškus profilius, MTU nustatymus ir ugniasienės taisykles dešimtyse koncentratorių — ir įrodyti, kad kiekvienas autentifikuoja sesijas ir taiko teisingus rate limit — yra tikroji ISP problema. Tampa sunkiau, kai prieigos maršrutizatorius yra už Carrier-Grade NAT be viešo IP, vis dažniau, operatoriams remiantis LTE ir Starlink uplinkais.
Čia centralizuotas valdymas užsitarnauja savo vietą: MKController palaiko kiekvieną maršrutizatorių pasiekiamą per autentifikuotą išeinantį tunelį net tada, kai jis neturi viešo adreso — tas pats požiūris kaip mūsų vadove apie MikroTik nuotolinę prieigą už CGNAT — kad auditutuotumėte konfigūraciją ir stumtumėte pataisymus visam parkui, su telemetrija, kuri pažymi mašiną su nutrūkusiomis sesijomis, kol klientai dar nepaskambino.
Patarimai
- Šablonuokite profilį, ne secrets — kiekvienas plano pakeitimas turėtų liesti vieną profilį, niekada ne tūkstančius paskyrų.
- Stebėkite koncentratoriaus CPU:
rate-limitsesijų eilės sumuojasi, o perkrauta mašina tyliai atmeta sesijas. - Nustatykite
max-mtu/max-mrusąmoningai. PPPoE prideda 8 baitus pridėtinių sąnaudų, o atsiradusi fragmentacija yra paslėpta daugumos „vienoje vietoje lėta“ pranešimų priežastis. - Centralizuokite autentifikaciją virš kelių šimtų naudotojų — vietiniai secrets, išsklaidyti po maršrutizatorius, tampa neįmanomi audituoti.
Valdykite visą savo PPPoE kraštą iš vieno ekrano
PPPoE serveris ant vieno MikroTik yra lengvas. Paleisti jį ISP parke — identiški profiliai, teisinga rate-limit kryptis ant kiekvienos mašinos, užrakintas valdymas ir įrodymas, kad kiekvienas koncentratorius autentifikuoja net už CGNAT be viešo IP — yra vieta, kur operatoriai praranda ištisas popietes. Tai darbas, kuriam MKController buvo sukurtas: pasiekti kiekvieną maršrutizatorių per saugų išeinantį tunelį, audituoti konfigūraciją, stebėti gyvas sesijas ir stumti pataisymą visam parkui iškart, su telemetrija, kuri pažymi mašiną su nutrūkusiomis sesijomis, kol klientas dar net nepaskambino. Taip ISP, paleidžiantys PPPoE ant MikroTik, paverčia maršrutizatorius-po-maršrutizatoriaus rutiną viena valdymo plokštuma.