{"id":81593,"date":"2020-05-15T01:42:36","date_gmt":"2020-05-14T23:42:36","guid":{"rendered":"https:\/\/prohoster.info\/blog\/administrirovanie\/tonkaya-nastrojka-marshrutizaczii-dlya-metallb-v-rezhime-l2"},"modified":"2020-05-15T01:42:36","modified_gmt":"2020-05-14T23:42:36","slug":"tonkaya-nastrojka-marshrutizaczii-dlya-metallb-v-rezhime-l2","status":"publish","type":"post","link":"https:\/\/prohoster.info\/sk\/blog\/administrirovanie\/tonkaya-nastrojka-marshrutizaczii-dlya-metallb-v-rezhime-l2","title":{"rendered":"Dostosowanie routingu dla MetalLB w trybie L2","gt_translate_keys":[{"key":"rendered","format":"text"}]},"content":{"rendered":"<p><img decoding=\"async\" alt=\"Dostosowanie routingu dla MetalLB w trybie L2\" src=\"\/wp-content\/uploads\/2020\/05\/d03a56702a85f4c8c80a6cac3e489980.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\nNed\u00e1vno som sa stretol s pomerne netradi\u010dnou \u00falohou nastavenia smerovania pre MetalLB. Ni\u010d by na tom nebolo, preto\u017ee zvy\u010dajne pre MetalLB nie s\u00fa potrebn\u00e9 \u017eiadne \u010fal\u0161ie akcie, ale v na\u0161om pr\u00edpade m\u00e1me dostato\u010dne ve\u013ek\u00fd klaster s pomerne jednoduchou konfigur\u00e1ciou siete.<\/p>\n<p><\/p>\n<p>V tomto \u010dl\u00e1nku sa podel\u00edm o to, ako nastavi\u0165 smerovanie zalo\u017een\u00e9 na zdroji a smerovanie zalo\u017een\u00e9 na politike pre vonkaj\u0161iu sie\u0165 v\u00e1\u0161ho klastru.<\/p>\n<p><\/p>\n<p>Nebudem sa podrobne zaobera\u0165 in\u0161tal\u00e1ciou a nastaven\u00edm MetalLB, preto\u017ee predpoklad\u00e1m, \u017ee u\u017e m\u00e1te ur\u010dit\u00e9 sk\u00fasenosti. Navrhoval by som ihne\u010f prejs\u0165 k veci, to znamen\u00e1 k nastaveniu smerovania. Tak\u017ee m\u00e1me \u0161tyri pr\u00edpady:<\/p>\n<p><noindex><a rel=\"nofollow\" name=\"habracut\"><\/a><\/noindex><\/p>\n<h1 id=\"sluchay-1-kogda-nastroyka-ne-trebuetsya\">Pr\u00edpad 1: Ke\u010f nastavenie nie je potrebn\u00e9<\/h1>\n<p><\/p>\n<p>Rozoberieme jednoduch\u00fd pr\u00edpad.<\/p>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"Dostosowanie routingu dla MetalLB w trybie L2\" src=\"\/wp-content\/uploads\/2020\/05\/f79cc1169741b899c95e76d5d4cf60fc.jpg\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><\/p>\n<p>Dodato\u010dn\u00e9 nastavenie smerovania nie je potrebn\u00e9, ke\u010f adresy vyd\u00e1van\u00e9 MetalLB s\u00fa v tej istej podsieti ako adresy va\u0161ich uzlov.<\/p>\n<p><\/p>\n<p>Napr\u00edklad m\u00e1te podsie\u0165 <code>192.168.1.0\/24<\/code>, v nej je smerova\u010d <code>192.168.1.1<\/code>, a va\u0161e uzly z\u00edskavaj\u00fa adresy: <code>192.168.1.10-30<\/code>, potom pre MetalLB m\u00f4\u017eete nastavi\u0165 rozsah <code>192.168.1.100-120<\/code> a by\u0165 si ist\u00fd, \u017ee bud\u00fa fungova\u0165 bez ak\u00e9hoko\u013evek \u010fal\u0161ieho nastavenia.<\/p>\n<p><\/p>\n<p>Pre\u010do je to tak? Preto\u017ee va\u0161e uzly u\u017e maj\u00fa nastaven\u00e9 trasy:<\/p>\n<p><\/p>\n<pre><code class=\"bash\"># ip route\ndefault via 192.168.1.1 dev eth0 onlink \n192.168.1.0\/24 dev eth0 proto kernel scope link src 192.168.1.10<\/code><\/pre>\n<p><\/p>\n<p>A adresy z toho ist\u00e9ho rozsahu si ich znovu pou\u017eij\u00fa bez ak\u00fdchko\u013evek \u010fal\u0161\u00edch pohybov.<\/p>\n<p><\/p>\n<h1 id=\"sluchay-2-kogda-trebuetsya-dopolnitelnaya-nastroyka\">Pr\u00edpad 2: Ke\u010f je potrebn\u00e9 dodato\u010dn\u00e9 nastavenie<\/h1>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"Dostosowanie routingu dla MetalLB w trybie L2\" src=\"\/wp-content\/uploads\/2020\/05\/02392fbc3c16bdf52f0c5ddaf5688e7d.jpg\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><\/p>\n<p>Mali by ste nastavi\u0165 dodato\u010dn\u00e9 trasy v\u017edy, ke\u010f va\u0161e uzly nemaj\u00fa nastaven\u00fd <a class=\"wpil_keyword_link\" href=\"https:\/\/prohoster.info\/sk\/lir\/ipv4\/\"   title=\"IP adresy\" data-wpil-keyword-link=\"linked\"  data-wpil-monitor-id=\"666\">IP adresy<\/a> alebo trasu do podsiete, pre ktor\u00fa MetalLB vyd\u00e1va adresy.<\/p>\n<p><\/p>\n<p>Vysvetl\u00edm trochu podrobnej\u0161ie. V\u017edy, ke\u010f MetalLB vyd\u00e1 adresu, to sa d\u00e1 porovna\u0165 s jednoduch\u00fdm priraden\u00edm typu:<\/p>\n<p><\/p>\n<pre><code class=\"bash\">ip addr add 10.9.8.7\/32 dev lo<\/code><\/pre>\n<p><\/p>\n<p>V\u0161imnite si, \u017ee:<\/p>\n<p><\/p>\n<ul>\n<li><strong>a)<\/strong> Adresa sa prira\u010fuje s prefixom <code>\/32<\/code> to znamen\u00e1, \u017ee trasa do podsiete pre \u0148u sa automaticky neprid\u00e1 (to je len adresa)<\/li>\n<li><strong>b)<\/strong> Adresa sa prira\u010fuje na ak\u00e9ko\u013evek rozhranie uzla (napr\u00edklad loopback). Tu je potrebn\u00e9 spomen\u00fa\u0165 zvl\u00e1\u0161tnos\u0165 sie\u0165ov\u00e9ho z\u00e1sobn\u00edka Linuxu. Nie je d\u00f4le\u017eit\u00e9, na ktor\u00e9 rozhranie prid\u00e1te adresu, jadro v\u017edy spracov\u00e1va arp-\u017eiadosti a odosiela arp-odpovede na ktor\u00e9ko\u013evek z nich, toto spr\u00e1vanie sa pova\u017euje za spr\u00e1vne a navy\u0161e sa dos\u0165 \u0161iroko pou\u017e\u00edva v takej dynamickej prostred\u00ed ako Kubernetes.<\/li>\n<\/ul>\n<p><\/p>\n<p>Toto spr\u00e1vanie je mo\u017en\u00e9 nastavi\u0165, napr\u00edklad, zapnut\u00edm strict arp:<\/p>\n<p><\/p>\n<pre><code class=\"bash\">echo 1 &gt; \/proc\/sys\/net\/ipv4\/conf\/all\/arp_ignore\necho 2 &gt; \/proc\/sys\/net\/ipv4\/conf\/all\/arp_announce<\/code><\/pre>\n<p><\/p>\n<p>V tomto pr\u00edpade bud\u00fa arp-odpovede zasielan\u00e9 iba vtedy, ak rozhranie obsahuje konkr\u00e9tnu IP adresu. Toto nastavenie je povinn\u00e9, ak pl\u00e1nujete pou\u017e\u00edva\u0165 MetalLB a v\u00e1\u0161 kube-proxy be\u017e\u00ed v re\u017eime IPVS.<\/p>\n<p><\/p>\n<p>MetalLB v\u0161ak nepou\u017e\u00edva jadro na spracovanie arp-\u017eiadost\u00ed, ale vykon\u00e1va to samostatne v u\u017e\u00edvate\u013eskom priestore, tak\u017ee t\u00e1to mo\u017enos\u0165 nebude ma\u0165 vplyv na fungovanie MetalLB.<\/p>\n<p><\/p>\n<p>Vr\u00e1\u0165me sa k na\u0161ej \u00falohe. Ak neexistuje cesta pre pridelen\u00e9 adresy na va\u0161ich uzloch, pridajte ju vopred na v\u0161etky uzly:<\/p>\n<p><\/p>\n<pre><code class=\"bash\">ip route add 10.9.8.0\/24 dev eth1<\/code><\/pre>\n<p><\/p>\n<h1 id=\"sluchay-3-kogda-ponadobitsya-source-based-routing\">Pr\u00edpad 3: Ke\u010f bude potrebn\u00e9 smerovanie zalo\u017een\u00e9 na zdroji<\/h1>\n<p><\/p>\n<p>Smerovanie zalo\u017een\u00e9 na zdroji budete musie\u0165 nastavi\u0165 vtedy, ke\u010f prij\u00edmate pakety cez samostatn\u00fd gateway, nie ten, ktor\u00fd m\u00e1te nastaven\u00fd ako predvolen\u00fd, a teda aj sp\u00e4tn\u00e9 pakety musia odch\u00e1dza\u0165 cez tento ist\u00fd gateway.<\/p>\n<p><\/p>\n<p>Napr\u00edklad, m\u00e1te t\u00fa ist\u00fa podsie\u0165 <code>192.168.1.0\/24<\/code> vy\u010dlenen\u00fa pre va\u0161e uzly, ale chcete pridelova\u0165 extern\u00e9 adresy pomocou MetalLB. Predpokladajme, \u017ee m\u00e1te nieko\u013eko adries z podsiete <code>1.2.3.0\/24<\/code> nach\u00e1dzaj\u00face sa vo VLAN 100 a chcete ich pou\u017ei\u0165 na pr\u00edstup k slu\u017eb\u00e1m Kubernetes zvonka.<\/p>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"Dostosowanie routingu dla MetalLB w trybie L2\" src=\"\/wp-content\/uploads\/2020\/05\/9360f35c4bfae25b12fc5aab2644b775.jpg\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><\/p>\n<p>Pri pr\u00edstupe na <code>1.2.3.4<\/code> budete posiela\u0165 \u017eiadosti z inej podsiete ako <code>1.2.3.0\/24<\/code> a o\u010dak\u00e1va\u0165 odpove\u010f. Uzol, ktor\u00fd je v s\u00fa\u010dasnosti hlavn\u00fdm pre pridelen\u00fa adresu MetalLB <code>1.2.3.4<\/code>, prijme paket od smerova\u010da <code>1.2.3.1<\/code>, ale odpove\u010f na\u0148 mus\u00ed \u00eds\u0165 tou istou trasou, cez <code>1.2.3.1<\/code>.<\/p>\n<p><\/p>\n<p>Ke\u010f\u017ee n\u00e1\u0161 uzol u\u017e m\u00e1 nastaven\u00fd predvolen\u00fd gateway <code>192.168.1.1<\/code>, odpove\u010f p\u00f4jde predvolene k nemu a nie k <code>1.2.3.1<\/code>, cez ktor\u00fd sme dostali paket.<\/p>\n<p><\/p>\n<p>Ako sa vysporiada\u0165 s touto situ\u00e1ciou?<\/p>\n<p><\/p>\n<p>V tomto pr\u00edpade mus\u00edte pripravi\u0165 v\u0161etky svoje uzly tak, aby boli schopn\u00e9 obsluhova\u0165 extern\u00e9 adresy bez dodato\u010dn\u00e9ho nastavenia. To znamen\u00e1, \u017ee pre vy\u0161\u0161ie uveden\u00fd pr\u00edklad je potrebn\u00e9 vopred vytvori\u0165 VLAN-rozhranie na uzle:<\/p>\n<p><\/p>\n<pre><code class=\"bash\">ip link add link eth0 name eth0.100 type vlan id 100\nip link set eth0.100 up<\/code><\/pre>\n<p><\/p>\n<p>A potom prida\u0165 smerovanie:<\/p>\n<p><\/p>\n<pre><code class=\"plaintext\">ip route add 1.2.3.0\/24 dev eth0.100 table 100\nip route add default via 1.2.3.1 table 100<\/code><\/pre>\n<p><\/p>\n<p>V\u0161imnite si, \u017ee trasy prid\u00e1vame do samostatnej tabu\u013eky smerovania <code>100<\/code> bude obsahova\u0165 iba dve trasy potrebn\u00e9 na zasielanie odpovedaj\u00faceho paketu cez gateway <code>1.2.3.1<\/code>, nach\u00e1dzaj\u00faceho sa za rozhran\u00edm <code>eth0.100<\/code>.<\/p>\n<p><\/p>\n<p>Teraz mus\u00edme prida\u0165 jednoduch\u00e9 pravidlo:<\/p>\n<p><\/p>\n<pre><code class=\"plaintext\">ip rule add from 1.2.3.0\/24 lookup 100<\/code><\/pre>\n<p><\/p>\n<p>ktor\u00e9 jasne hovor\u00ed: ak je adresa zdroja paketu v <code>1.2.3.0\/24<\/code>, je potrebn\u00e9 pou\u017ei\u0165 tabu\u013eku smerovania <code>100<\/code>. V nej u\u017e m\u00e1me op\u00edsan\u00fa trasu, ktor\u00e1 ho po\u0161le cez <code>1.2.3.1<\/code><\/p>\n<p><\/p>\n<h1 id=\"sluchay-4-kogda-ponadobitsya-policy-based-routing\">Pr\u00edpad 4: Ke\u010f bude potrebn\u00e9 smerovanie zalo\u017een\u00e9 na politike<\/h1>\n<p><\/p>\n<p>Topol\u00f3gia siete je rovnak\u00e1 ako v predch\u00e1dzaj\u00facom pr\u00edklade, ale predpokladajme, \u017ee chcete ma\u0165 tie\u017e mo\u017enos\u0165 pristupova\u0165 k vonkaj\u0161\u00edm adres\u00e1m z poolu <code>1.2.3.0\/24<\/code> z va\u0161ich podov:<\/p>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"Dostosowanie routingu dla MetalLB w trybie L2\" src=\"\/wp-content\/uploads\/2020\/05\/46f1f7c2826d87ec1fe8499862ccdd1a.jpg\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><\/p>\n<p>Rys sa nach\u00e1dza v tom, \u017ee pri pr\u00edstupe k akejko\u013evek adrese v <code>1.2.3.0\/24<\/code>, odpovedaj\u00faci paket prich\u00e1dzaj\u00faci na uzol s adresou zdroja v rozsahu <code>1.2.3.0\/24<\/code> bude poslu\u0161ne odoslan\u00fd do <code>eth0.100<\/code>, ale my chceme, aby Kubernetes preposlal ho do n\u00e1\u0161ho prv\u00e9ho podu, ktor\u00fd p\u00f4vodne vygeneroval po\u017eiadavku.<\/p>\n<p><\/p>\n<p>Rie\u0161enie tejto ot\u00e1zky sa uk\u00e1zalo ako n\u00e1ro\u010dn\u00e9, ale stalo sa to mo\u017en\u00e9 v\u010faka smerovaniu na z\u00e1klade politiky:<\/p>\n<p><\/p>\n<p>Pre lep\u0161ie pochopenie procesu uvediem blokov\u00fa sch\u00e9mu netfilter:<br \/>\n<img decoding=\"async\" alt=\"Dostosowanie routingu dla MetalLB w trybie L2\" src=\"\/wp-content\/uploads\/2020\/05\/6b2f117c2dcddad85190156d566231c8.jpg\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><\/p>\n<p>Najprv, ako v predch\u00e1dzaj\u00facom pr\u00edklade, vytvor\u00edme \u010fal\u0161iu routingov\u00fa tabu\u013eku:<\/p>\n<p><\/p>\n<pre><code class=\"plaintext\">ip route add 1.2.3.0\/24 dev eth0.100 table 100\nip route add default via 1.2.3.1 table 100<\/code><\/pre>\n<p><\/p>\n<p>Teraz prid\u00e1me nieko\u013eko pravidiel do iptables:<\/p>\n<p><\/p>\n<pre><code class=\"plaintext\">iptables -t mangle -A PREROUTING -i eth0.100 -j CONNMARK --set-mark 0x100\niptables -t mangle -A PREROUTING  -j CONNMARK --restore-mark\niptables -t mangle -A PREROUTING -m mark ! --mark 0 -j RETURN\niptables -t mangle -A POSTROUTING -j CONNMARK --save-mark<\/code><\/pre>\n<p><\/p>\n<p>Tieto pravidl\u00e1 bud\u00fa ozna\u010dova\u0165 prich\u00e1dzaj\u00face pripojenia na rozhran\u00ed <code>eth0.100<\/code>, ozna\u010duj\u00fac v\u0161etky pakety zna\u010dkou <code>0x100<\/code>, touto istou zna\u010dkou bud\u00fa ozna\u010den\u00e9 aj odpovede v r\u00e1mci jedn\u00e9ho pripojenia.<\/p>\n<p><\/p>\n<p>Teraz m\u00f4\u017eeme prida\u0165 pravidlo smerovania:<\/p>\n<p><\/p>\n<pre><code class=\"plaintext\">ip rule add from 1.2.3.0\/24 fwmark 0x100 lookup 100<\/code><\/pre>\n<p><\/p>\n<p>To znamen\u00e1, \u017ee v\u0161etky pakety s adresou zdroja <code>1.2.3.0\/24<\/code> a zna\u010dkou <code>0x100<\/code> by mali by\u0165 smerovan\u00e9 pomocou tabu\u013eky <code>100<\/code>.<\/p>\n<p><\/p>\n<p>Tak\u017ee in\u00e9 pakety prijat\u00e9 na inom rozhran\u00ed sa pod toto pravidlo nedostan\u00fa, \u010do im umo\u017en\u00ed by\u0165 smerovan\u00e9 \u0161tandardn\u00fdmi prostriedkami Kubernetes.<\/p>\n<p><\/p>\n<p>Existuje v\u0161ak e\u0161te jedno ale, v Linuxe existuje takzvan\u00fd filter reverznej cesty, ktor\u00fd kaz\u00ed v\u0161etko \u2013 vykon\u00e1va jednoduch\u00fa kontrolu: pre v\u0161etky prich\u00e1dzaj\u00face pakety men\u00ed adresu zdroja paketu na adresu odosielate\u013ea a kontroluje, \u010di m\u00f4\u017ee paket od\u00eds\u0165 cez to ist\u00e9 rozhranie, cez ktor\u00e9 bol prijat\u00fd, ak nie, tak ho filtrove.<\/p>\n<p><\/p>\n<p>Probl\u00e9m je v tom, \u017ee v na\u0161om pr\u00edpade nebude fungova\u0165 spr\u00e1vne, ale m\u00f4\u017eeme ho vypn\u00fa\u0165:<\/p>\n<p><\/p>\n<pre><code class=\"bash\">echo 0 &gt; \/proc\/sys\/net\/ipv4\/conf\/all\/rp_filter\necho 0 &gt; \/proc\/sys\/net\/ipv4\/conf\/eth0.100\/rp_filter<\/code><\/pre>\n<p><\/p>\n<p>V\u0161imnite si, \u017ee prv\u00fd pr\u00edkaz ovl\u00e1da glob\u00e1lne spr\u00e1vanie rp_filter, ak ho nevypnete, druh\u00fd pr\u00edkaz nebude ma\u0165 \u017eiadny efekt. Napriek tomu ostatn\u00e9 rozhrania zostan\u00fa so zapnut\u00fdm rp_filter.<\/p>\n<p><\/p>\n<p>Aby sme \u00faplne neobmedzili pr\u00e1cu filtra, m\u00f4\u017eeme vyu\u017ei\u0165 realiz\u00e1ciu rp_filter pre netfilter. Pou\u017eit\u00edm rpfilter ako modulu iptables je mo\u017en\u00e9 nastavi\u0165 dostato\u010dne flexibiln\u00e9 pravidl\u00e1, napr\u00edklad:<\/p>\n<p><\/p>\n<pre><code class=\"bash\">iptables -t raw -A PREROUTING -i eth0.100 -d 1.2.3.0\/24 -j RETURN\niptables -t raw -A PREROUTING -i eth0.100 -m rpfilter --invert -j DROP<\/code><\/pre>\n<p><\/p>\n<p>aktivova\u0165 rp_filter na rozhran\u00ed <code>eth0.100<\/code> pre v\u0161etky adresy okrem <code>1.2.3.0\/24<\/code>.<\/p>\n<p>Zdroj: <a content=\"nofollow\" rel=\"nofollow\" href=\"https:\/\/habr.com\/ru\/post\/501842\/\">habr.com<\/a> <\/p>","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"excerpt":{"rendered":"<p>\u041d\u0435 \u0442\u0430\u043a \u0434\u0430\u0432\u043d\u043e \u044f \u0441\u0442\u043e\u043b\u043a\u043d\u0443\u043b\u0441\u044f \u0441 \u0432\u0435\u0441\u044c\u043c\u0430 \u043d\u0435\u0441\u0442\u0430\u043d\u0434\u0430\u0440\u0442\u043d\u043e\u0439 \u0437\u0430\u0434\u0430\u0447\u0435\u0439 \u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0438 \u043c\u0430\u0440\u0448\u0440\u0443\u0442\u0438\u0449\u0430\u0446\u0438\u0438 \u0434\u043b\u044f MetalLB. \u0412\u0441\u0451 \u0431\u044b \u043d\u0438\u0447\u0435\u0433\u043e, \u0442.\u043a. \u043e\u0431\u044b\u0447\u043d\u043e \u0434\u043b\u044f MetalLB \u043d\u0435 \u0442\u0440\u0435\u0431\u0443\u0435\u0442\u0441\u044f \u043d\u0438\u043a\u0430\u043a\u0438\u0445 \u0434\u043e\u043f\u043e\u043b\u043d\u0438\u0442\u0435\u043b\u044c\u043d\u044b\u0445 \u0434\u0435\u0439\u0441\u0442\u0432\u0438\u0439, \u043d\u043e \u0432 \u043d\u0430\u0448\u0435\u043c \u0441\u043b\u0443\u0447\u0430\u0435 \u0438\u043c\u0435\u0435\u0442\u0441\u044f \u0434\u043e\u0441\u0442\u0430\u0442\u043e\u0447\u043d\u043e \u0431\u043e\u043b\u044c\u0448\u043e\u0439 \u043a\u043b\u0430\u0441\u0442\u0435\u0440 \u0441 \u0432\u0435\u0441\u044c\u043c\u0430 \u043d\u0435\u0445\u0438\u0442\u0440\u043e\u0439 \u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0430\u0446\u0438\u0435\u0439 \u0441\u0435\u0442\u0438. \u0412 \u0434\u0430\u043d\u043d\u043e\u0439 \u0441\u0442\u0430\u0442\u044c\u0435 \u044f \u0440\u0430\u0441\u0441\u043a\u0430\u0436\u0443 \u043a\u0430\u043a \u043d\u0430\u0441\u0442\u0440\u043e\u0438\u0442\u044c source-based \u0438 policy-based routing \u0434\u043b\u044f \u0432\u043d\u0435\u0448\u043d\u0435\u0439 \u0441\u0435\u0442\u0438 \u0432\u0430\u0448\u0435\u0433\u043e \u043a\u043b\u0430\u0441\u0442\u0435\u0440\u0430. \u042f [&hellip;]<\/p>\n","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"author":1,"featured_media":81594,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[688],"tags":[],"class_list":["post-81593","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-administrirovanie"],"aioseo_notices":[],"aioseo_head":"\n\t\t<!-- All in One SEO 5.0.3 - aioseo.com -->\n\t<meta name=\"description\" content=\"\u041d\u0435 \u0442\u0430\u043a \u0434\u0430\u0432\u043d\u043e \u044f \u0441\u0442\u043e\u043b\u043a\u043d\u0443\u043b\u0441\u044f \u0441 \u0432\u0435\u0441\u044c\u043c\u0430.\" \/>\n\t<meta name=\"robots\" content=\"max-image-preview:large\" \/>\n\t<meta name=\"author\" content=\"Yuri Gagarin\"\/>\n\t<link rel=\"canonical\" href=\"https:\/\/prohoster.info\/sk\/blog\/administrirovanie\/tonkaya-nastrojka-marshrutizaczii-dlya-metallb-v-rezhime-l2\" \/>\n\t\t<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 5.0.3\" \/>\n\t\t<meta property=\"og:locale\" content=\"sk_SK\" \/>\n\t\t<meta property=\"og:site_name\" content=\"ProHoster | \u041a\u0443\u043f\u0438\u0442\u044c \u043d\u0430\u0434\u0435\u0436\u043d\u044b\u0439 \u0445\u043e\u0441\u0442\u0438\u043d\u0433 \u0434\u043b\u044f \u0441\u0430\u0439\u0442\u043e\u0432 \u0441 \u0437\u0430\u0449\u0438\u0442\u043e\u0439 \u043e\u0442 DDoS, VPS VDS \u0441\u0435\u0440\u0432\u0435\u0440\u044b\" \/>\n\t\t<meta property=\"og:type\" content=\"article\" \/>\n\t\t<meta property=\"og:title\" content=\"\ud83e\udd47\u0422\u043e\u043d\u043a\u0430\u044f \u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0430 \u043c\u0430\u0440\u0448\u0440\u0443\u0442\u0438\u0437\u0430\u0446\u0438\u0438 \u0434\u043b\u044f MetalLB \u0432 \u0440\u0435\u0436\u0438\u043c\u0435 L2 | ProHoster\" \/>\n\t\t<meta property=\"og:description\" content=\"\u041d\u0435 \u0442\u0430\u043a \u0434\u0430\u0432\u043d\u043e \u044f \u0441\u0442\u043e\u043b\u043a\u043d\u0443\u043b\u0441\u044f \u0441 \u0432\u0435\u0441\u044c\u043c\u0430.\" \/>\n\t\t<meta property=\"og:url\" content=\"https:\/\/prohoster.info\/sk\/blog\/administrirovanie\/tonkaya-nastrojka-marshrutizaczii-dlya-metallb-v-rezhime-l2\" \/>\n\t\t<meta property=\"og:image\" content=\"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg\" \/>\n\t\t<meta property=\"og:image:secure_url\" content=\"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg\" \/>\n\t\t<meta property=\"og:image:width\" content=\"350\" \/>\n\t\t<meta property=\"og:image:height\" content=\"350\" \/>\n\t\t<meta property=\"article:published_time\" content=\"2020-05-14T23:42:36+00:00\" \/>\n\t\t<meta property=\"article:modified_time\" content=\"2020-05-14T23:42:36+00:00\" \/>\n\t\t<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/prohoster\" \/>\n\t\t<meta property=\"article:author\" content=\"https:\/\/www.facebook.com\/prohoster\" \/>\n\t\t<!-- All in One SEO -->\n\n","aioseo_head_json":{"title":"\ud83e\udd47Optimaliz\u00e1cia smerovania pre MetalLB v re\u017eime L2 | ProHoster","description":"Ned\u00e1vno som sa stretol s pomerne.","canonical_url":"https:\/\/prohoster.info\/sk\/blog\/administrirovanie\/tonkaya-nastrojka-marshrutizaczii-dlya-metallb-v-rezhime-l2","robots":"max-image-preview:large","keywords":"","webmasterTools":{"miscellaneous":""},"schema":null,"og:locale":"sk_SK","og:site_name":"ProHoster | \u041a\u0443\u043f\u0438\u0442\u044c \u043d\u0430\u0434\u0435\u0436\u043d\u044b\u0439 \u0445\u043e\u0441\u0442\u0438\u043d\u0433 \u0434\u043b\u044f \u0441\u0430\u0439\u0442\u043e\u0432 \u0441 \u0437\u0430\u0449\u0438\u0442\u043e\u0439 \u043e\u0442 DDoS, VPS VDS \u0441\u0435\u0440\u0432\u0435\u0440\u044b","og:type":"article","og:title":"\ud83e\udd47\u0422\u043e\u043d\u043a\u0430\u044f \u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0430 \u043c\u0430\u0440\u0448\u0440\u0443\u0442\u0438\u0437\u0430\u0446\u0438\u0438 \u0434\u043b\u044f MetalLB \u0432 \u0440\u0435\u0436\u0438\u043c\u0435 L2 | ProHoster","og:description":"\u041d\u0435 \u0442\u0430\u043a \u0434\u0430\u0432\u043d\u043e \u044f \u0441\u0442\u043e\u043b\u043a\u043d\u0443\u043b\u0441\u044f \u0441 \u0432\u0435\u0441\u044c\u043c\u0430.","og:url":"https:\/\/prohoster.info\/sk\/blog\/administrirovanie\/tonkaya-nastrojka-marshrutizaczii-dlya-metallb-v-rezhime-l2","og:image":"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg","og:image:secure_url":"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg","og:image:width":350,"og:image:height":350,"article:published_time":"2020-05-14T23:42:36+00:00","article:modified_time":"2020-05-14T23:42:36+00:00","article:publisher":"https:\/\/www.facebook.com\/prohoster","article:author":"https:\/\/www.facebook.com\/prohoster"},"aioseo_meta_data":{"post_id":"81593","title":null,"description":null,"keywords":null,"keyphrases":null,"primary_term":null,"canonical_url":null,"og_title":null,"og_description":null,"og_object_type":"default","og_image_type":"default","og_image_url":null,"og_image_width":null,"og_image_height":null,"og_image_custom_url":null,"og_image_custom_fields":null,"og_video":null,"og_custom_url":null,"og_article_section":null,"og_article_tags":null,"twitter_use_og":false,"twitter_card":"default","twitter_image_type":"default","twitter_image_url":null,"twitter_image_custom_url":null,"twitter_image_custom_fields":null,"twitter_title":null,"twitter_description":null,"schema":{"blockGraphs":[],"customGraphs":[],"default":{"data":{"Article":[],"Course":[],"Dataset":[],"FAQPage":[],"Movie":[],"Person":[],"Product":[],"ProductReview":[],"Car":[],"Recipe":[],"Service":[],"SoftwareApplication":[],"WebPage":[]},"graphName":"","isEnabled":true},"graphs":[]},"schema_type":null,"schema_type_options":null,"pillar_content":false,"robots_default":true,"robots_noindex":false,"robots_noarchive":false,"robots_nosnippet":false,"robots_nofollow":false,"robots_noimageindex":false,"robots_noodp":false,"robots_notranslate":false,"robots_max_snippet":null,"robots_max_videopreview":null,"robots_max_imagepreview":"large","priority":null,"frequency":null,"local_seo":null,"seo_analyzer_scan_date":null,"breadcrumb_settings":null,"limit_modified_date":false,"reviewed_by":null,"ai":null,"created":"2021-02-28 15:55:42","updated":"2026-02-08 20:23:59","focus_keyword":null,"additional_keywords":null,"truseo_locale":null},"gt_translate_keys":[{"key":"link","format":"url"}],"_links":{"self":[{"href":"https:\/\/prohoster.info\/sk\/wp-json\/wp\/v2\/posts\/81593","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/prohoster.info\/sk\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/prohoster.info\/sk\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/prohoster.info\/sk\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/prohoster.info\/sk\/wp-json\/wp\/v2\/comments?post=81593"}],"version-history":[{"count":1,"href":"https:\/\/prohoster.info\/sk\/wp-json\/wp\/v2\/posts\/81593\/revisions"}],"predecessor-version":[{"id":157857,"href":"https:\/\/prohoster.info\/sk\/wp-json\/wp\/v2\/posts\/81593\/revisions\/157857"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/prohoster.info\/sk\/wp-json\/wp\/v2\/media\/81594"}],"wp:attachment":[{"href":"https:\/\/prohoster.info\/sk\/wp-json\/wp\/v2\/media?parent=81593"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/prohoster.info\/sk\/wp-json\/wp\/v2\/categories?post=81593"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/prohoster.info\/sk\/wp-json\/wp\/v2\/tags?post=81593"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}