{"id":81265,"date":"2020-05-12T01:42:43","date_gmt":"2020-05-11T23:42:43","guid":{"rendered":"https:\/\/prohoster.info\/blog\/administrirovanie\/bystryj-routing-i-nat-v-linux"},"modified":"2020-05-12T01:42:43","modified_gmt":"2020-05-11T23:42:43","slug":"bystryj-routing-i-nat-v-linux","status":"publish","type":"post","link":"https:\/\/prohoster.info\/hu\/blog\/administrirovanie\/bystryj-routing-i-nat-v-linux","title":{"rendered":"Gyors routing \u00e9s NAT Linuxon","gt_translate_keys":[{"key":"rendered","format":"text"}]},"content":{"rendered":"<p>Ahogy az IPv4 c\u00edmek elfogynak, sok szolg\u00e1ltat\u00f3 k\u00e9nytelen szervezni az \u00fcgyfelek internet-hozz\u00e1f\u00e9r\u00e9s\u00e9t c\u00edmtford\u00edt\u00e1ssal. Ebben a cikkben arr\u00f3l fogok besz\u00e9lni, hogyan \u00e9rhetj\u00fck el a Carrier Grade NAT teljes\u00edtm\u00e9nyt kereskedelmi szervereken.<br \/>\n<noindex><a rel=\"nofollow\" name=\"habracut\"><\/a><\/noindex><\/p>\n<h3>Egy kis t\u00f6rt\u00e9nelem<\/h3>\n<p>\nAz IPv4 c\u00edmtartom\u00e1ny kimer\u00fcl\u00e9s\u00e9nek t\u00e9m\u00e1ja m\u00e1r nem \u00faj. Egy id\u0151 ut\u00e1n a RIPE-n\u00e9l v\u00e1r\u00f3list\u00e1k (waiting list) jelentek meg, majd l\u00e9trej\u00f6ttek azok a t\u0151zsd\u00e9k, ahol c\u00edmblokkokat adtak-vettek \u00e9s b\u00e9rleti szerz\u0151d\u00e9seket k\u00f6t\u00f6ttek. Fokozatosan a szolg\u00e1ltat\u00f3k internet-hozz\u00e1f\u00e9r\u00e9si szolg\u00e1ltat\u00e1sokat kezdtek k\u00edn\u00e1lni c\u00edmtford\u00edt\u00e1ssal \u00e9s porttford\u00edt\u00e1ssal. Volt, aki nem tudta megszerezni a megfelel\u0151 c\u00edmek sz\u00e1m\u00e1t, hogy minden el\u0151fizet\u0151nek \u201efeh\u00e9r\u201d c\u00edmet kioszthasson, m\u00edg m\u00e1sok anyagi megfontol\u00e1sb\u00f3l lemondtak a c\u00edmek v\u00e1s\u00e1rl\u00e1s\u00e1r\u00f3l a m\u00e1sodlagos piacon. A h\u00e1l\u00f3zati berendez\u00e9sek gy\u00e1rt\u00f3i t\u00e1mogatt\u00e1k ezt az \u00f6tletet, mivel ez a funkci\u00f3 \u00e1ltal\u00e1ban tov\u00e1bbi b\u0151v\u00edt\u0151 modulokat vagy licenceket ig\u00e9nyel. P\u00e9ld\u00e1ul a Juniper MX routercsal\u00e1dj\u00e1ban (kiv\u00e9ve az utols\u00f3 MX104 \u00e9s MX204 modelleket) a NAPT-ot k\u00fcl\u00f6n szolg\u00e1ltat\u00f3i k\u00e1rty\u00e1n, az MS-MIC-en lehet v\u00e9grehajtani, a Cisco ASR1k eset\u00e9ben CGN licence sz\u00fcks\u00e9ges, m\u00edg a Cisco ASR9k eset\u00e9ben egy k\u00fcl\u00f6n modul, az A9K-ISM-100 \u00e9s a hozz\u00e1 tartoz\u00f3 A9K-CGN-LIC licence sz\u00fcks\u00e9ges. \u00d6sszess\u00e9g\u00e9ben nem olcs\u00f3 mulats\u00e1g.<\/p>\n<h3>IPTables<\/h3>\n<p>\nA NAT v\u00e9grehajt\u00e1s\u00e1hoz nem sz\u00fcks\u00e9gesek speci\u00e1lis sz\u00e1m\u00edt\u00e1si er\u0151forr\u00e1sok, ezt b\u00e1rmilyen \u00e1ltal\u00e1nos c\u00e9l\u00fa processzor k\u00e9pes megoldani, amely p\u00e9ld\u00e1ul b\u00e1rmely otthoni routerben megtal\u00e1lhat\u00f3. Szolg\u00e1ltat\u00f3i szinten ezt a feladatot kereskedelmi szerverek seg\u00edts\u00e9g\u00e9vel lehet megoldani FreeBSD (ipfw\/pf) vagy GNU\/Linux (iptables) oper\u00e1ci\u00f3s rendszeren. A FreeBSD-t nem fogjuk figyelembe venni, mivel m\u00e1r r\u00e9gen lemondtam ennek az OS-nek a haszn\u00e1lat\u00e1r\u00f3l, \u00edgy a GNU\/Linux-ra \u00f6sszpontos\u00edtunk.<\/p>\n<p>A c\u00edmtford\u00edt\u00e1s bekapcsol\u00e1sa nem neh\u00e9z. El\u0151sz\u00f6r is, egy szab\u00e1lyt kell be\u00edrni az iptables-nel a nat t\u00e1bl\u00e1ba:<\/p>\n<pre><code class=\"bash\">iptables -t nat -A POSTROUTING -s 100.64.0.0\/10 -j SNAT --to - --persistent\n<\/code><\/pre>\n<p>\nA m\u0171k\u00f6d\u00e9si rendszer bet\u00f6lti az nf_conntrack modult, amely nyomon k\u00f6veti az \u00f6sszes akt\u00edv kapcsolatot \u00e9s v\u00e9grehajtja a sz\u00fcks\u00e9ges \u00e1talak\u00edt\u00e1sokat. Itt van n\u00e9h\u00e1ny finoms\u00e1g. El\u0151sz\u00f6r is, mivel a NAT-r\u00f3l van sz\u00f3 egy szolg\u00e1ltat\u00f3 szintj\u00e9n, sz\u00fcks\u00e9ges a timeout-ok finomhangol\u00e1sa, mert az alap\u00e9rtelmezett \u00e9rt\u00e9kek mellett a ford\u00edt\u00e1si t\u00e1bl\u00e1zat m\u00e9rete el\u00e9g gyorsan katasztrof\u00e1lis m\u00e9ret\u0171v\u00e9 n\u00f6vekedhet. Az al\u00e1bbiakban egy p\u00e9lda a be\u00e1ll\u00edt\u00e1sokra, amelyeket a szervereimen haszn\u00e1ltam:<\/p>\n<pre><code class=\"bash\">net.ipv4.ip_forward = 1\nnet.ipv4.ip_local_port_range = 8192 65535\n\nnet.netfilter.nf_conntrack_generic_timeout = 300\nnet.netfilter.nf_conntrack_tcp_timeout_syn_sent = 60\nnet.netfilter.nf_conntrack_tcp_timeout_syn_recv = 60\nnet.netfilter.nf_conntrack_tcp_timeout_established = 600\nnet.netfilter.nf_conntrack_tcp_timeout_fin_wait = 60\nnet.netfilter.nf_conntrack_tcp_timeout_close_wait = 45\nnet.netfilter.nf_conntrack_tcp_timeout_last_ack = 30\nnet.netfilter.nf_conntrack_tcp_timeout_time_wait = 120\nnet.netfilter.nf_conntrack_tcp_timeout_close = 10\nnet.netfilter.nf_conntrack_tcp_timeout_max_retrans = 300\nnet.netfilter.nf_conntrack_tcp_timeout_unacknowledged = 300\nnet.netfilter.nf_conntrack_udp_timeout = 30\nnet.netfilter.nf_conntrack_udp_timeout_stream = 60\nnet.netfilter.nf_conntrack_icmpv6_timeout = 30\nnet.netfilter.nf_conntrack_icmp_timeout = 30\nnet.netfilter.nf_conntrack_events_retry_timeout = 15\nnet.netfilter.nf_conntrack_checksum=0\n<\/code><\/pre>\n<p>\nM\u00e1sodszor, mivel az alap\u00e9rtelmezett ford\u00edt\u00e1si t\u00e1bl\u00e1zat m\u00e9rete nem lett kisz\u00e1m\u00edtva szolg\u00e1ltat\u00f3i k\u00f6rnyezetre, n\u00f6velni kell:<\/p>\n<pre><code class=\"plaintext\">net.netfilter.nf_conntrack_max = 3145728\n<\/code><\/pre>\n<p>\n N\u00f6velni kell a hash-t\u00e1bl\u00e1zat bucketeinek sz\u00e1m\u00e1t is, amely az \u00f6sszes ford\u00edt\u00e1st t\u00e1rolja (ez az nf_conntrack modul opci\u00f3ja): <\/p>\n<pre><code class=\"plaintext\">options nf_conntrack hashsize=1572864\n<\/code><\/pre>\n<p>\nEzek ut\u00e1n a kis m\u00f3dos\u00edt\u00e1sok ut\u00e1n egy teljesen m\u0171k\u00f6d\u0151k\u00e9pes strukt\u00far\u00e1t kapunk, amely k\u00e9pes nagy mennyis\u00e9g\u0171 kliens c\u00edmet a k\u00fcls\u0151 poolba ford\u00edtani. Azonban, ennek a megold\u00e1snak a teljes\u00edtm\u00e9nye hagy maga ut\u00e1n k\u00edv\u00e1nnival\u00f3t. Az els\u0151 GNU\/Linux NAT haszn\u00e1lati k\u00eds\u00e9rleteim sor\u00e1n (k\u00f6r\u00fclbel\u00fcl 2013-ban) k\u00f6r\u00fclbel\u00fcl 7Gbit\/s sebess\u00e9get \u00e9s 0.8Mpps-t tapasztaltam egy szerveren (Xeon E5-1650v2). Az\u00f3ta a GNU\/Linux kernel h\u00e1l\u00f3zati stack-j\u00e9ben sokf\u00e9le optimaliz\u00e1l\u00e1s t\u00f6rt\u00e9nt, \u00edgy ugyanazon hardver mellett egy szerver teljes\u00edtm\u00e9nye gyakorlatilag 18-19 Gbit\/s-ra n\u0151tt 1.8-1.9 Mpps mellett (ezek voltak a hat\u00e1resetek), de a forgalom mennyis\u00e9ge, amelyet egy szerver feldolgozott, sokkal gyorsabban n\u00f6vekedett. V\u00e9g\u00fcl azonos\u00edtott\u00e1k a terhel\u00e9seloszt\u00e1si s\u00e9ma k\u00fcl\u00f6nb\u00f6z\u0151 szerverek k\u00f6z\u00f6tti megoszt\u00e1s\u00e1t, de mindez n\u00f6velte a konfigur\u00e1ci\u00f3, karbantart\u00e1s \u00e9s a szolg\u00e1ltat\u00e1si min\u0151s\u00e9g fenntart\u00e1s\u00e1nak bonyolults\u00e1g\u00e1t.<\/p>\n<h3>NFTables<\/h3>\n<p>\nJelenleg a DPDK \u00e9s XDP haszn\u00e1lata divatos ir\u00e1nyzat a programozott \"csomagok \u00e1tvitel\u00e9ben\". E t\u00e9m\u00e1ban rengeteg cikk k\u00e9sz\u00fclt, sz\u00e1mos el\u0151ad\u00e1s hangzott el, \u00e9s kereskedelmi term\u00e9kek jelentek meg (p\u00e9ld\u00e1ul a VasExperts \u00e1ltal k\u00e9sz\u00edtett SKAT). De a szolg\u00e1ltat\u00f3k korl\u00e1tozott programoz\u00f3i er\u0151forr\u00e1saival a saj\u00e1t \"alkot\u00e1s\" elk\u00e9sz\u00edt\u00e9se ezen keretrendszerek alapj\u00e1n meglehet\u0151sen probl\u00e9m\u00e1s. Az ilyen megold\u00e1s k\u00e9s\u0151bbi alkalmaz\u00e1sa sokkal bonyolultabb lesz, t\u00f6bbek k\u00f6z\u00f6tt diagnosztikai eszk\u00f6z\u00f6ket is fejleszteni kell. P\u00e9ld\u00e1ul a szok\u00e1sos tcpdump nem fog m\u0171k\u00f6dni DPDK-val, \u00e9s a XDP-vel visszak\u00fcld\u00f6tt csomagokat sem fogja \"l\u00e1tni\". A csomagok felhaszn\u00e1l\u00f3i t\u00e9rbe val\u00f3 tov\u00e1bb\u00edt\u00e1s\u00e1r\u00f3l sz\u00f3l\u00f3 \u00faj technol\u00f3gi\u00e1kra vonatkoz\u00f3 \u00f6sszes besz\u00e9lget\u00e9s h\u00e1tter\u00e9ben a <noindex><a rel=\"nofollow\" href=\"https:\/\/netdevconf.info\/0x13\/session.html?workshop-netfilter-mini\">el\u0151ad\u00e1sok<\/a><\/noindex> \u00e9s <noindex><a rel=\"nofollow\" href=\"https:\/\/lwn.net\/Articles\/738214\/\">cikkb\u0151l sz\u00e1rmaznak<\/a><\/noindex> Pablo Neira Ayuso, az iptables karbantart\u00f3ja a flow offloading nftables-ban val\u00f3 fejleszt\u00e9s\u00e9r\u0151l. N\u00e9zz\u00fck meg k\u00f6zelebbr\u0151l ezt a mechanizmust.<\/p>\n<p>Az alap\u00f6tlet az, hogy ha az \u00fatv\u00e1laszt\u00f3 mindk\u00e9t ir\u00e1nyban \u00e1tengedte egy session csomagjait (a TCP session \u00e1llapota ESTABLISHED lett), akkor nincs sz\u00fcks\u00e9g a session tov\u00e1bbi csomagjait az \u00f6sszes t\u0171zfalszab\u00e1lyon \u00e1tkonfigur\u00e1lni, mivel az \u00f6sszes ellen\u0151rz\u00e9s v\u00e9g\u00fcl a csomag tov\u00e1bb\u00edt\u00e1s\u00e1hoz vezet a routingon kereszt\u00fcl. S\u0151t, az \u00fatvonal kiv\u00e1laszt\u00e1s\u00e1t sem sz\u00fcks\u00e9ges elv\u00e9gezni \u2014 m\u00e1r tudjuk, melyik interf\u00e9szhez \u00e9s melyik hoszthoz kell tov\u00e1bb\u00edtani a csomagokat ezen a session keretein bel\u00fcl. Csak meg kell \u0151rizni ezeket az inform\u00e1ci\u00f3kat, \u00e9s haszn\u00e1lni \u0151ket a csomagok korai feldolgoz\u00e1sa sor\u00e1n a routinghoz. NAT v\u00e9grehajt\u00e1sakor tov\u00e1bbi inform\u00e1ci\u00f3t kell meg\u0151rizni a c\u00edmmel \u00e9s portokkal kapcsolatos v\u00e1ltoz\u00e1sokr\u00f3l, amelyeket az nf_conntrack modul \u00e1talak\u00edt. Igen, term\u00e9szetesen ilyenkor a k\u00fcl\u00f6nf\u00e9le policy-k \u00e9s egy\u00e9b inform\u00e1ci\u00f3s-statisztikai szab\u00e1lyok az iptables-ben nem fognak m\u0171k\u00f6dni, de egy egyedi NAT vagy pl. a borderek eset\u00e9ben ez nem olyannyira fontos, mert a szolg\u00e1ltat\u00e1sok el vannak osztva az eszk\u00f6z\u00f6k k\u00f6z\u00f6tt.<\/p>\n<h4>Konfigur\u00e1ci\u00f3<\/h4>\n<p>\nAhhoz, hogy ezt a funkci\u00f3t ig\u00e9nybe vegy\u00fck, a k\u00f6vetkez\u0151kre van sz\u00fcks\u00e9g:<\/p>\n<ul>\n<li>Friss kernel haszn\u00e1lata. B\u00e1r a funkci\u00f3 \u00f6n\u00e1ll\u00f3an m\u00e1r a 4.16-os kernelben megjelent, meglehet\u0151sen sok\u00e1ig nagyon \"nyers\" volt, \u00e9s rendszeresen kernel panikot okozott. 2019 december\u00e9ben stabiliz\u00e1l\u00f3dott, amikor megjelentek az LTS kernelforgalmok, a 4.19.90 \u00e9s az 5.4.5.<\/li>\n<li>\u00cdrja \u00e1t az iptables szab\u00e1lyokat nftables form\u00e1tumba, friss nftables verzi\u00f3t haszn\u00e1lva. Pontosan m\u0171k\u00f6dik a 0.9.0 verzi\u00f3ban.<\/li>\n<\/ul>\n<p>\nHa az els\u0151 pont alapvet\u0151en \u00e9rthet\u0151, a legfontosabb, hogy ne felejts\u00fck el beilleszteni a modult a konfigur\u00e1ci\u00f3ba a ford\u00edt\u00e1s sor\u00e1n (CONFIG_NFT_FLOW_OFFLOAD=m), a m\u00e1sodik pont tov\u00e1bbi magyar\u00e1zatot ig\u00e9nyel. Az nftables szab\u00e1lyok megfogalmaz\u00e1sa teljesen m\u00e1s, mint az iptables eset\u00e9ben. <noindex><a rel=\"nofollow\" href=\"https:\/\/wiki.nftables.org\/wiki-nftables\/index.php\/Main_Page\">k\u00f3dk\u00f6nyvt\u00e1rra l\u00e9p\u00e9s\u00e9vel \u00e9rheti el.<\/a><\/noindex> szinte minden szempontot felt\u00e1r, emellett speci\u00e1lis <noindex><a rel=\"nofollow\" href=\"https:\/\/wiki.nftables.org\/wiki-nftables\/index.php\/Moving_from_iptables_to_nftables\">konverterek<\/a><\/noindex> iptables-b\u00f3l nftables-ba. Ez\u00e9rt csak egy NAT \u00e9s flow offload be\u00e1ll\u00edt\u00e1si p\u00e9ld\u00e1t mutatok be. Egy kis legenda a p\u00e9ld\u00e1hoz: &lt;i_if&gt;, &lt;o_if&gt; \u2014 ezek azok a h\u00e1l\u00f3zati interf\u00e9szek, amelyeken kereszt\u00fcl a forgalom \u00e1tmegy, val\u00f3j\u00e1ban t\u00f6bb mint kett\u0151 is lehet. &lt;pool_addr_start&gt;, &lt;pool_addr_end&gt; \u2014 a \u201efeh\u00e9r\u201d c\u00edmek tartom\u00e1ny\u00e1nak kezdeti \u00e9s v\u00e9gc\u00edme.<\/p>\n<p>A NAT konfigur\u00e1ci\u00f3 nagyon egyszer\u0171:<\/p>\n<pre><code class=\"bash\">#! \/usr\/sbin\/nft -f\n\ntable nat {\n        chain postrouting {\n                type nat hook postrouting priority 100;\n                oif &lt;o_if&gt; snat to &lt;pool_addr_start&gt;-&lt;pool_addr_end&gt; persistent\n        }\n}\n<\/code><\/pre>\n<p>\nA flow offload egy kicsit bonyolultabb, de teljesen \u00e9rthet\u0151:<\/p>\n<pre><code class=\"bash\">#! \/usr\/sbin\/nft -f\n\ntable inet filter {\n        flowtable fastnat {\n                hook ingress priority 0\n                devices = { &lt;i_if&gt;, &lt;o_if&gt; }\n        }\n\n        chain forward {\n                type filter hook forward priority 0; policy accept;\n                ip protocol { tcp , udp } flow offload @fastnat;\n        }\n}\n<\/code><\/pre>\n<p>\nEz teh\u00e1t az \u00f6sszes be\u00e1ll\u00edt\u00e1s. Mostant\u00f3l minden TCP\/UDP forgalom a fastnat t\u00e1bl\u00e1ba fog ker\u00fclni, \u00e9s sokkal gyorsabban lesz feldolgozva.<\/p>\n<h3>Eredm\u00e9nyek<\/h3>\n<p>\nHogy \u00e9rthet\u0151bb legyen, mennyivel \u201egyorsabb\u201d ez, mell\u00e9kelek egy k\u00e9perny\u0151k\u00e9pet k\u00e9t val\u00f3s szerver terhel\u00e9s\u00e9r\u0151l, amelyek azonos hardverrel rendelkeznek (Xeon E5-1650v2), azonos be\u00e1ll\u00edt\u00e1sokkal, ugyanazt a Linux kernelt haszn\u00e1lj\u00e1k, de az iptables (NAT4) \u00e9s nftables (NAT5) NAT-ot hajtanak v\u00e9gre.<\/p>\n<p><img decoding=\"async\" alt=\"Gyors routing \u00e9s NAT Linuxon\" src=\"\/wp-content\/uploads\/2020\/05\/94bd3f58bf499ceb9837cd771cc9ef9f.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nA k\u00e9perny\u0151k\u00e9pen nincs csomagok m\u00e1sodpercre vonatkoz\u00f3 grafikon, de ezen szerverek terhel\u00e9si profilj\u00e1ban a csomagok \u00e1tlagos m\u00e9rete k\u00f6r\u00fclbel\u00fcl 800 b\u00e1jt, ez\u00e9rt az \u00e9rt\u00e9kek el\u00e9rik az 1.5Mpps-t. Mint l\u00e1that\u00f3, hatalmas teljes\u00edtm\u00e9nytartal\u00e9k van az nftables-szal rendelkez\u0151 szervern\u00e9l. Jelenleg ez a szerver 30Gbit\/s-ot kezel 3Mpps mellett, \u00e9s egy\u00e9rtelm\u0171en k\u00e9pes el\u00e9rni a 40Gbps fizikai h\u00e1l\u00f3zati korl\u00e1tot, mik\u00f6zben CPU er\u0151forr\u00e1sai m\u00e9g mindig szabadok.<\/p>\n<p>Rem\u00e9lem, hogy ez az anyag hasznos lesz a h\u00e1l\u00f3m\u00e9rn\u00f6k\u00f6k sz\u00e1m\u00e1ra, akik jav\u00edtani pr\u00f3b\u00e1lj\u00e1k szervereik teljes\u00edtm\u00e9ny\u00e9t.<br \/>\n<br \/>Forr\u00e1s: <a content=\"nofollow\" rel=\"nofollow\" href=\"https:\/\/habr.com\/ru\/post\/501234\/\">habr.com<\/a> <\/p>","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"excerpt":{"rendered":"<p>\u041f\u043e \u043c\u0435\u0440\u0435 \u0438\u0441\u0447\u0435\u0440\u043f\u0430\u043d\u0438\u044f \u0430\u0434\u0440\u0435\u0441\u043e\u0432 IPv4, \u043c\u043d\u043e\u0433\u0438\u0435 \u043e\u043f\u0435\u0440\u0430\u0442\u043e\u0440\u044b \u0441\u0432\u044f\u0437\u0438 \u0441\u0442\u043e\u043b\u043a\u043d\u0443\u043b\u0438\u0441\u044c \u0441 \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u043e\u0441\u0442\u044c\u044e \u043e\u0440\u0433\u0430\u043d\u0438\u0437\u043e\u0432\u044b\u0432\u0430\u0442\u044c \u0434\u043e\u0441\u0442\u0443\u043f \u0441\u0432\u043e\u0438\u0445 \u043a\u043b\u0438\u0435\u043d\u0442\u043e\u0432 \u0432 \u0441\u0435\u0442\u044c \u0441 \u043f\u043e\u043c\u043e\u0449\u044c\u044e \u0442\u0440\u0430\u043d\u0441\u043b\u044f\u0446\u0438\u0438 \u0430\u0434\u0440\u0435\u0441\u043e\u0432. \u0412 \u044d\u0442\u043e\u0439 \u0441\u0442\u0430\u0442\u044c\u0435 \u044f \u0440\u0430\u0441\u0441\u043a\u0430\u0436\u0443, \u043a\u0430\u043a \u043c\u043e\u0436\u043d\u043e \u043f\u043e\u043b\u0443\u0447\u0438\u0442\u044c \u043f\u0440\u043e\u0438\u0437\u0432\u043e\u0434\u0438\u0442\u0435\u043b\u044c\u043d\u043e\u0441\u0442\u044c \u0443\u0440\u043e\u0432\u043d\u044f Carrier Grade NAT \u043d\u0430 commodity \u0441\u0435\u0440\u0432\u0435\u0440\u0430\u0445. \u041d\u0435\u043c\u043d\u043e\u0433\u043e \u0438\u0441\u0442\u043e\u0440\u0438\u0438 \u0422\u0435\u043c\u0430 \u0438\u0441\u0447\u0435\u0440\u043f\u0430\u043d\u0438\u044f \u0430\u0434\u0440\u0435\u0441\u043d\u043e\u0433\u043e \u043f\u0440\u043e\u0441\u0442\u0440\u0430\u043d\u0441\u0442\u0432\u0430 IPv4 \u0443\u0436\u0435 \u043d\u0435 \u043d\u043e\u0432\u0430. \u0412 \u043a\u0430\u043a\u043e\u0439-\u0442\u043e \u043c\u043e\u043c\u0435\u043d\u0442 \u0432 RIPE \u043f\u043e\u044f\u0432\u0438\u043b\u0438\u0441\u044c \u043e\u0447\u0435\u0440\u0435\u0434\u0438 \u043e\u0436\u0438\u0434\u0430\u043d\u0438\u044f [&hellip;]<\/p>\n","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"author":1,"featured_media":81266,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[688],"tags":[],"class_list":["post-81265","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=\"\u041f\u043e \u043c\u0435\u0440\u0435 \u0438\u0441\u0447\u0435\u0440\u043f\u0430\u043d\u0438\u044f \u0430\u0434\u0440\u0435\u0441\u043e\u0432 IPv4, \u043c\u043d\u043e\u0433\u0438\u0435 \u043e\u043f\u0435\u0440\u0430\u0442\u043e\u0440\u044b \u0441\u0432\u044f\u0437\u0438 \u0441\u0442\u043e\u043b\u043a\u043d\u0443\u043b\u0438\u0441\u044c \u0441 \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u043e\u0441\u0442\u044c\u044e \u043e\u0440\u0433\u0430\u043d\u0438\u0437\u043e\u0432\u044b\u0432\u0430\u0442\u044c \u0434\u043e\u0441\u0442\u0443\u043f \u0441\u0432\u043e\u0438\u0445 \u043a\u043b\u0438\u0435\u043d\u0442\u043e\u0432 \u0432 \u0441\u0435\u0442\u044c \u0441 \u043f\u043e\u043c\u043e\u0449\u044c\u044e \u0442\u0440\u0430\u043d\u0441\u043b\u044f\u0446\u0438\u0438 \u0430\u0434\u0440\u0435\u0441\u043e\u0432.\" \/>\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\/hu\/blog\/administrirovanie\/bystryj-routing-i-nat-v-linux\" \/>\n\t\t<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 5.0.3\" \/>\n\t\t<meta property=\"og:locale\" content=\"hu_HU\" \/>\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\u0411\u044b\u0441\u0442\u0440\u044b\u0439 \u0440\u043e\u0443\u0442\u0438\u043d\u0433 \u0438 NAT \u0432 Linux | ProHoster\" \/>\n\t\t<meta property=\"og:description\" content=\"\u041f\u043e \u043c\u0435\u0440\u0435 \u0438\u0441\u0447\u0435\u0440\u043f\u0430\u043d\u0438\u044f \u0430\u0434\u0440\u0435\u0441\u043e\u0432 IPv4, \u043c\u043d\u043e\u0433\u0438\u0435 \u043e\u043f\u0435\u0440\u0430\u0442\u043e\u0440\u044b \u0441\u0432\u044f\u0437\u0438 \u0441\u0442\u043e\u043b\u043a\u043d\u0443\u043b\u0438\u0441\u044c \u0441 \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u043e\u0441\u0442\u044c\u044e \u043e\u0440\u0433\u0430\u043d\u0438\u0437\u043e\u0432\u044b\u0432\u0430\u0442\u044c \u0434\u043e\u0441\u0442\u0443\u043f \u0441\u0432\u043e\u0438\u0445 \u043a\u043b\u0438\u0435\u043d\u0442\u043e\u0432 \u0432 \u0441\u0435\u0442\u044c \u0441 \u043f\u043e\u043c\u043e\u0449\u044c\u044e \u0442\u0440\u0430\u043d\u0441\u043b\u044f\u0446\u0438\u0438 \u0430\u0434\u0440\u0435\u0441\u043e\u0432.\" \/>\n\t\t<meta property=\"og:url\" content=\"https:\/\/prohoster.info\/hu\/blog\/administrirovanie\/bystryj-routing-i-nat-v-linux\" \/>\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-11T23:42:43+00:00\" \/>\n\t\t<meta property=\"article:modified_time\" content=\"2020-05-11T23:42:43+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\udd47Gyors \u00fatvonalv\u00e1laszt\u00e1s \u00e9s NAT Linux alatt | ProHoster","description":"Ahogy az IPv4 c\u00edmek kimer\u00fclnek, sok szolg\u00e1ltat\u00f3 szembes\u00fcl azzal a sz\u00fcks\u00e9glettel, hogy \u00fcgyfeleik sz\u00e1m\u00e1ra el\u00e9rhet\u0151v\u00e9 kell tenni a h\u00e1l\u00f3zatot c\u00edmford\u00edt\u00e1son kereszt\u00fcl.","canonical_url":"https:\/\/prohoster.info\/hu\/blog\/administrirovanie\/bystryj-routing-i-nat-v-linux","robots":"max-image-preview:large","keywords":"","webmasterTools":{"miscellaneous":""},"schema":null,"og:locale":"hu_HU","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\u0411\u044b\u0441\u0442\u0440\u044b\u0439 \u0440\u043e\u0443\u0442\u0438\u043d\u0433 \u0438 NAT \u0432 Linux | ProHoster","og:description":"\u041f\u043e \u043c\u0435\u0440\u0435 \u0438\u0441\u0447\u0435\u0440\u043f\u0430\u043d\u0438\u044f \u0430\u0434\u0440\u0435\u0441\u043e\u0432 IPv4, \u043c\u043d\u043e\u0433\u0438\u0435 \u043e\u043f\u0435\u0440\u0430\u0442\u043e\u0440\u044b \u0441\u0432\u044f\u0437\u0438 \u0441\u0442\u043e\u043b\u043a\u043d\u0443\u043b\u0438\u0441\u044c \u0441 \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u043e\u0441\u0442\u044c\u044e \u043e\u0440\u0433\u0430\u043d\u0438\u0437\u043e\u0432\u044b\u0432\u0430\u0442\u044c \u0434\u043e\u0441\u0442\u0443\u043f \u0441\u0432\u043e\u0438\u0445 \u043a\u043b\u0438\u0435\u043d\u0442\u043e\u0432 \u0432 \u0441\u0435\u0442\u044c \u0441 \u043f\u043e\u043c\u043e\u0449\u044c\u044e \u0442\u0440\u0430\u043d\u0441\u043b\u044f\u0446\u0438\u0438 \u0430\u0434\u0440\u0435\u0441\u043e\u0432.","og:url":"https:\/\/prohoster.info\/hu\/blog\/administrirovanie\/bystryj-routing-i-nat-v-linux","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-11T23:42:43+00:00","article:modified_time":"2020-05-11T23:42:43+00:00","article:publisher":"https:\/\/www.facebook.com\/prohoster","article:author":"https:\/\/www.facebook.com\/prohoster"},"aioseo_meta_data":{"post_id":"81265","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 16:01:23","updated":"2022-09-28 04:47:17","focus_keyword":null,"additional_keywords":null,"truseo_locale":null},"gt_translate_keys":[{"key":"link","format":"url"}],"_links":{"self":[{"href":"https:\/\/prohoster.info\/hu\/wp-json\/wp\/v2\/posts\/81265","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/prohoster.info\/hu\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/prohoster.info\/hu\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/prohoster.info\/hu\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/prohoster.info\/hu\/wp-json\/wp\/v2\/comments?post=81265"}],"version-history":[{"count":0,"href":"https:\/\/prohoster.info\/hu\/wp-json\/wp\/v2\/posts\/81265\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/prohoster.info\/hu\/wp-json\/wp\/v2\/media\/81266"}],"wp:attachment":[{"href":"https:\/\/prohoster.info\/hu\/wp-json\/wp\/v2\/media?parent=81265"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/prohoster.info\/hu\/wp-json\/wp\/v2\/categories?post=81265"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/prohoster.info\/hu\/wp-json\/wp\/v2\/tags?post=81265"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}