{"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\/sl\/blog\/administrirovanie\/tonkaya-nastrojka-marshrutizaczii-dlya-metallb-v-rezhime-l2","title":{"rendered":"Natan\u010dna nastavitev usmerjanja za MetalLB v L2 na\u010dinu","gt_translate_keys":[{"key":"rendered","format":"text"}]},"content":{"rendered":"<p><img decoding=\"async\" alt=\"Natan\u010dna nastavitev usmerjanja za MetalLB v L2 na\u010dinu\" src=\"\/wp-content\/uploads\/2020\/05\/d03a56702a85f4c8c80a6cac3e489980.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\nNedavno sem se sre\u010dal s precej nenavadno nalogo nastavitve usmerjanja za MetalLB. Ni\u010d hudega, ker obi\u010dajno ni potrebnih dodatnih ukrepov za MetalLB, vendar imamo v na\u0161em primeru precej velik grozdi s dokaj preprosto omre\u017eno konfiguracijo.<\/p>\n<p><\/p>\n<p>V tem \u010dlanku bom opisal, kako nastaviti usmerjanje na podlagi virov in usmerjanje na podlagi pravil za zunanje omre\u017eje va\u0161ega grozda.<\/p>\n<p><\/p>\n<p>Ne bom se podrobno ustavljal pri namestitvi in nastavitvi MetalLB, ker predvidevam, da imate \u017ee nekaj izku\u0161enj. Predlagam, da se takoj lotimo dela, torej nastavitve usmerjanja. Imamo \u0161tiri primere:<\/p>\n<p><noindex><a rel=\"nofollow\" name=\"habracut\"><\/a><\/noindex><\/p>\n<h1 id=\"sluchay-1-kogda-nastroyka-ne-trebuetsya\">Primer 1: Ko nastavitev ni potrebna<\/h1>\n<p><\/p>\n<p>Razmislimo o preprostem primeru.<\/p>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"Natan\u010dna nastavitev usmerjanja za MetalLB v L2 na\u010dinu\" src=\"\/wp-content\/uploads\/2020\/05\/f79cc1169741b899c95e76d5d4cf60fc.jpg\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><\/p>\n<p>Dodatna nastavitev usmerjanja ni potrebna, ko so naslovi, ki jih dodeljuje MetalLB, v isti podmre\u017ei kot naslovi va\u0161ih vozli\u0161\u010d.<\/p>\n<p><\/p>\n<p>Na primer, imate podmre\u017eo <code>192.168.1.0\/24<\/code>, v njej je usmerjevalnik <code>192.168.1.1<\/code>, in va\u0161a vozli\u0161\u010da prejemajo naslove: <code>192.168.1.10-30<\/code>, zato lahko za MetalLB nastavite obseg <code>192.168.1.100-120<\/code> in biti prepri\u010dani, da bodo delovali brez kakr\u0161nekoli dodatne nastavitve.<\/p>\n<p><\/p>\n<p>Zakaj tako? Ker imajo va\u0161a vozli\u0161\u010da \u017ee nastavljene poti:<\/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>In naslovi iz istega obsega jih bodo ponovno uporabili brez kakr\u0161nih koli dodatnih ukrepov.<\/p>\n<p><\/p>\n<h1 id=\"sluchay-2-kogda-trebuetsya-dopolnitelnaya-nastroyka\">Primer 2: Ko je potrebna dodatna nastavitev<\/h1>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"Natan\u010dna nastavitev usmerjanja za MetalLB v L2 na\u010dinu\" src=\"\/wp-content\/uploads\/2020\/05\/02392fbc3c16bdf52f0c5ddaf5688e7d.jpg\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><\/p>\n<p>Dodatne poti je treba nastaviti vedno, ko va\u0161a vozli\u0161\u010da nimajo nastavljene <a class=\"wpil_keyword_link\" href=\"https:\/\/prohoster.info\/sl\/lir\/ipv4\/\"   title=\"IP-naslove\" data-wpil-keyword-link=\"linked\"  data-wpil-monitor-id=\"666\">IP-naslove<\/a> ali poti v podmre\u017eo, za katero MetalLB dodeljuje naslove.<\/p>\n<p><\/p>\n<p>Pojasnim malo podrobneje. Vedno, ko MetalLB dodeli naslov, to lahko primerjate s preprostim dodeljevanjem, ki izgleda takole:<\/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>Pozor, na:<\/p>\n<p><\/p>\n<ul>\n<li><strong>a)<\/strong> Naslov se dodeli s predpono <code>\/32<\/code> , kar pomeni, da pot v podmre\u017eo zanj samodejno ne bo dodana (to je samo naslov)<\/li>\n<li><strong>b)<\/strong> Naslov se dodeli kateremu koli vmesniku vozli\u0161\u010da (na primer loopback). Tukaj je treba omeniti zna\u010dilnost omre\u017enega steka Linuxa. Ni va\u017eno, na kateri vmesnik dodelite naslov, jedro bo vedno obdelalo arp poizvedbe in poslalo arp odgovore na katerokoli od njih, tak\u0161no obna\u0161anje velja za pravilno in se poleg tega precej \u0161iroko uporablja v tako dinami\u010dnem okolju, kot je Kubernetes.<\/li>\n<\/ul>\n<p><\/p>\n<p>To obna\u0161anje je mogo\u010de nastaviti, na primer, z aktiviranjem strogega 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 tem primeru bodo arp-odgovori poslani le, \u010de ima vmesnik jasno dolo\u010den dolo\u010den IP naslov. Ta nastavitev je obvezna, \u010de nameravate uporabljati MetalLB in va\u0161 kube-proxy deluje v na\u010dinu IPVS.<\/p>\n<p><\/p>\n<p>Kljub temu MetalLB za obdelavo arp-poizvedb ne uporablja jedra, ampak to po\u010dne samostojno v uporabni\u0161kem prostoru, zato ta mo\u017enost ne bo vplivala na delovanje MetalLB.<\/p>\n<p><\/p>\n<p>Vrnimo se k na\u0161emu nalogu. \u010ce za dodeljene naslove na va\u0161ih vozli\u0161\u010dih ne obstaja pot, jo dodajte vnaprej na vsa vozli\u0161\u010da:<\/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\">Primera 3: Ko bo potrebno usmerjanje na osnovi vira<\/h1>\n<p><\/p>\n<p>Usmerjanje na osnovi vira boste morali nastaviti, ko prejemate pakete prek lo\u010denega prehod, ne tistega, ki je nastavljen privzeto, zato mora tudi povratni paket oditi skozi ta isti prehod.<\/p>\n<p><\/p>\n<p>Na primer, imate isto podomre\u017eje <code>192.168.1.0\/24<\/code> dodeljeno va\u0161im vozli\u0161\u010dem, vendar \u017eelite dodeliti zunanje naslove z uporabo MetalLB. Recimo, da imate ve\u010d naslovov iz podomre\u017eja <code>1.2.3.0\/24<\/code> ki so v VLAN 100, in jih \u017eelite uporabiti za dostop do Kubernetes storitev od zunaj.<\/p>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"Natan\u010dna nastavitev usmerjanja za MetalLB v L2 na\u010dinu\" src=\"\/wp-content\/uploads\/2020\/05\/9360f35c4bfae25b12fc5aab2644b775.jpg\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><\/p>\n<p>Ko se obrnete na <code>1.2.3.4<\/code> boste po\u0161iljali poizvedbe iz drugega podomre\u017eja kot <code>1.2.3.0\/24<\/code> in pri\u010dakovali odgovor. Vozli\u0161\u010de, ki je trenutni glavni za dodeljeni MetalLB naslov <code>1.2.3.4<\/code>, bo prejelo paket od usmerjevalnika <code>1.2.3.1<\/code>, toda odgovor mu mora nujno oditi po isti poti, preko <code>1.2.3.1<\/code>.<\/p>\n<p><\/p>\n<p>Ker na\u0161e vozli\u0161\u010de \u017ee ima nastavljen privzeti prehod <code>192.168.1.1<\/code>, bo privzeto odgovor \u0161el k njemu, in ne k <code>1.2.3.1<\/code>, preko katerega smo prejeli paket.<\/p>\n<p><\/p>\n<p>Kako se spoprijeti s to situacijo?<\/p>\n<p><\/p>\n<p>V tem primeru morate pripraviti vsa va\u0161a vozli\u0161\u010da tako, da bodo pripravljena obravnavati zunanje naslove brez dodatne nastavitve. To pomeni, da morate za zgornji primer vnaprej ustvariti VLAN-vmesnik na vozli\u0161\u010du:<\/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>Nato dodajte poti:<\/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>Upo\u0161tevajte, da poti dodajamo v lo\u010deno tabelo usmerjanja, <code>100<\/code> ki bo vsebovala le dve poti, potrebni za po\u0161iljanje povratnega paketa prek prehoda <code>1.2.3.1<\/code>, ki se nahaja za vmesnikom <code>eth0.100<\/code>.<\/p>\n<p><\/p>\n<p>Zdaj moramo dodati preprosto pravilo:<\/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>ki jasno pove: \u010de je naslov izvora paketa v <code>1.2.3.0\/24<\/code>, se mora uporabiti tabela usmerjanja <code>100<\/code>. V njej je \u017ee opisana pot, ki bo poslala prek <code>1.2.3.1<\/code><\/p>\n<p><\/p>\n<h1 id=\"sluchay-4-kogda-ponadobitsya-policy-based-routing\">Primer 4: Ko potrebujete usmerjanje na podlagi pravil<\/h1>\n<p><\/p>\n<p>Topologija omre\u017eja, kot v prej\u0161njem primeru, vendar recimo, da \u017eelite imeti tudi mo\u017enost dostopa do zunanjih naslovov bazena <code>1.2.3.0\/24<\/code> iz va\u0161ih kontejnerjev:<\/p>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"Natan\u010dna nastavitev usmerjanja za MetalLB v L2 na\u010dinu\" src=\"\/wp-content\/uploads\/2020\/05\/46f1f7c2826d87ec1fe8499862ccdd1a.jpg\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><\/p>\n<p>Posebnost je v tem, da ob dostopu do kateregakoli naslova v <code>1.2.3.0\/24<\/code>, se povratni paket, ki pride na vozli\u0161\u010de in ima izvorni naslov v razponu <code>1.2.3.0\/24<\/code> , tako pripravljen poslan v <code>eth0.100<\/code>, vendar \u017eelimo, da Kubernetes preusmeri ta paket v na\u0161 prvi kontejner, ki je izvorni zahtevek generiral.<\/p>\n<p><\/p>\n<p>Re\u0161evanje tega problema se je izkazalo za zahtevno, vendar je bilo mo\u017eno zahvaljujo\u010d usmerjanju na podlagi pravil:<\/p>\n<p><\/p>\n<p>Za bolj\u0161e razumevanje procesa bom prilo\u017eil shemo netfilter:<br \/>\n<img decoding=\"async\" alt=\"Natan\u010dna nastavitev usmerjanja za MetalLB v L2 na\u010dinu\" src=\"\/wp-content\/uploads\/2020\/05\/6b2f117c2dcddad85190156d566231c8.jpg\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><\/p>\n<p>Najprej, kot v prej\u0161njem primeru, ustvarimo dodatno usmerjevalno tabelo:<\/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>Zdaj dodajmo nekaj pravil v 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>Ta pravila bodo ozna\u010dila prihajajo\u010de povezave na vmesniku <code>eth0.100<\/code>, pri \u010demer bodo vsi paketi ozna\u010deni s tagom <code>0x100<\/code>, s tem istim tagom bodo ozna\u010deni tudi odgovori v okviru iste povezave.<\/p>\n<p><\/p>\n<p>Zdaj lahko dodamo pravilo za usmerjanje:<\/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>Torej, vsi paketi z izvorno naslovom <code>1.2.3.0\/24<\/code> in tagom <code>0x100<\/code> morajo biti usmerjeni z uporabo tabele <code>100<\/code>.<\/p>\n<p><\/p>\n<p>Tako drugi paketi, prejeti na drugem vmesniku, pod to pravilo ne spadajo, kar jim omogo\u010da, da jih usmerimo z obi\u010dajnimi sredstvi Kubernetes.<\/p>\n<p><\/p>\n<p>Obstaja pa \u0161e ena zadeva, v Linuxu obstaja tako imenovani filter obratne poti, ki pokvari vse, saj izvaja preprosto preverjanje: za vse prihajajo\u010de pakete spremeni izvorni naslov paketa na naslov po\u0161iljatelja in preveri, ali lahko paket zapusti preko istega vmesnika, na katerega je bil prejet, \u010de ne, ga filtrira.<\/p>\n<p><\/p>\n<p>Te\u017eava je v tem, da bo v na\u0161em primeru deloval nepravilno, lahko pa ga izklopimo:<\/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>Upo\u0161tevajte, prvi ukaz nadzoruje globalno obna\u0161anje rp_filter, \u010de ga ne izklopite, drugi ukaz ne bo imel nobenega u\u010dinka. Kljub temu bodo ostali vmesniki ostali z vklju\u010denim rp_filter.<\/p>\n<p><\/p>\n<p>Da ne omejimo delovanje filtra popolnoma, lahko uporabimo implementacijo rp_filter za netfilter. Z uporabo rpfilter kot modula iptables lahko nastavimo dovolj prilagodljive pravilnike, na primer:<\/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>vklopi rp_filter na vmesniku <code>eth0.100<\/code> za vse naslove razen <code>1.2.3.0\/24<\/code>.<\/p>\n<p>Izvor: <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.4 - 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\/sl\/blog\/administrirovanie\/tonkaya-nastrojka-marshrutizaczii-dlya-metallb-v-rezhime-l2\" \/>\n\t\t<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 5.0.4\" \/>\n\t\t<meta property=\"og:locale\" content=\"sl_SI\" \/>\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\/sl\/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\udd47Fina nastavitev usmerjanja za MetalLB v na\u010dinu L2 | ProHoster","description":"Nedavno sem se sre\u010dal z precej.","canonical_url":"https:\/\/prohoster.info\/sl\/blog\/administrirovanie\/tonkaya-nastrojka-marshrutizaczii-dlya-metallb-v-rezhime-l2","robots":"max-image-preview:large","keywords":"","webmasterTools":{"miscellaneous":""},"schema":null,"og:locale":"sl_SI","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\/sl\/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\/sl\/wp-json\/wp\/v2\/posts\/81593","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/prohoster.info\/sl\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/prohoster.info\/sl\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/prohoster.info\/sl\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/prohoster.info\/sl\/wp-json\/wp\/v2\/comments?post=81593"}],"version-history":[{"count":1,"href":"https:\/\/prohoster.info\/sl\/wp-json\/wp\/v2\/posts\/81593\/revisions"}],"predecessor-version":[{"id":157857,"href":"https:\/\/prohoster.info\/sl\/wp-json\/wp\/v2\/posts\/81593\/revisions\/157857"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/prohoster.info\/sl\/wp-json\/wp\/v2\/media\/81594"}],"wp:attachment":[{"href":"https:\/\/prohoster.info\/sl\/wp-json\/wp\/v2\/media?parent=81593"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/prohoster.info\/sl\/wp-json\/wp\/v2\/categories?post=81593"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/prohoster.info\/sl\/wp-json\/wp\/v2\/tags?post=81593"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}