{"id":9450,"date":"2023-08-31T11:07:57","date_gmt":"2023-08-31T08:07:57","guid":{"rendered":"https:\/\/vasexperts.com\/?p=9450"},"modified":"2025-08-13T14:24:04","modified_gmt":"2025-08-13T11:24:04","slug":"using-named-framed-pools-in-l2-bng","status":"publish","type":"post","link":"https:\/\/vasexperts.com\/br\/blog\/bng\/using-named-framed-pools-in-l2-bng\/","title":{"rendered":"Uso de pools nomeados em L2 BNG"},"content":{"rendered":"<h2>Descri\u00e7\u00e3o do caso de uso<\/h2>\r\n<ul>\r\n \t<li>Cliente com tipo de acesso Q-in-Q<\/li>\r\n \t<li>FastDPI \u2013 tratamento e policiamento de tr\u00e1fego<\/li>\r\n \t<li>FastPCRF \u2013 solicita\u00e7\u00f5es de proxy entre fastDPI e Radius<\/li>\r\n \t<li>Servidor Radius \u2013 recebe solicita\u00e7\u00f5es do fastPCRF e gera respostas com atributos especificados<\/li>\r\n \t<li>Roteador \u2013 respons\u00e1vel pela transmiss\u00e3o de pacotes para a Internet e pelo roteamento de volta<\/li>\r\n \t<li>Servidor DHCP \u2013 respons\u00e1vel pela aloca\u00e7\u00e3o de endere\u00e7os IP do pool especificado<\/li>.\r\n<\/ul>\r\n<noscript><img decoding=\"async\" src=\"\/wp-content\/uploads\/2023\/08\/l2-bras-scenario.jpg\" alt=\"l2-bras-scenario\" width=\"100%\" height=\"auto\" class=\"alignnone size-full wp-image-9453\" srcset=\"\/wp-content\/uploads\/2023\/08\/l2-bras-scenario.jpg 900w, \/wp-content\/uploads\/2023\/08\/l2-bras-scenario-300x246.jpg 300w, \/wp-content\/uploads\/2023\/08\/l2-bras-scenario-768x629.jpg 768w\" sizes=\"(max-width: 900px) 100vw, 900px\"><\/noscript><img decoding=\"async\" src=\"\/wp-content\/uploads\/2023\/08\/l2-bras-scenario.jpg\" alt=\"l2-bras-scenario\" width=\"100%\" height=\"auto\" class=\"alignnone size-full wp-image-9453 lazyload\" sizes=\"(max-width: 900px) 100vw, 900px\" data-src=\"\/wp-content\/uploads\/2023\/08\/l2-bras-scenario.jpg\" data-srcset=\"\/wp-content\/uploads\/2023\/08\/l2-bras-scenario.jpg 900w, \/wp-content\/uploads\/2023\/08\/l2-bras-scenario-300x246.jpg 300w, \/wp-content\/uploads\/2023\/08\/l2-bras-scenario-768x629.jpg 768w\">\r\n<h2>Algoritmo de opera\u00e7\u00e3o do SSG<\/h2>\r\nA partir da vers\u00e3o 8.4 do SSG, est\u00e1 dispon\u00edvel o suporte a pools de endere\u00e7os IP para os modos PPPoE e DHCP Radius Proxy.\r\n\r\nAnteriormente, nesses modos, o SSG esperava receber os par\u00e2metros de rede do assinante em Access-Accept do servidor Radius. Agora \u00e9 poss\u00edvel emitir o nome do pool de endere\u00e7os       a partir do qual o servidor DHCP deve alocar endere\u00e7os para os assinantes.\r\n\r\n\u00c9 poss\u00edvel passar o nome do pool para o servidor DHCP usando v\u00e1rias op\u00e7\u00f5es, como 125, 77 e 60 para IPv4 e 15 e 17 para IPv6.\r\n\r\nNo nosso caso, usaremos    <strong>   op\u00e7\u00e3o 125 para IPv4 e 17 para IPv6,    <\/strong>  , pois essas op\u00e7\u00f5es s\u00e3o sempre adicionadas na solicita\u00e7\u00e3o. Portanto, a probabilidade de que os dados cr\u00edticos sejam substitu\u00eddos \u00e9 zero.\r\n\r\nPara usar outras op\u00e7\u00f5es, voc\u00ea precisa configurar o servidor DHCP e o SSG adequadamente.\r\n\r\n [product id=\u201d 110\u2033 type=\u201ddark\u201d]\r\n<h2>Configura\u00e7\u00e3o dofastPCRF<\/h2>\r\nPara configurar o SSG, al\u00e9m da configura\u00e7\u00e3o b\u00e1sica do BRAS L2, \u00e9 necess\u00e1rio especificar os endere\u00e7os dos servidores DHCP e a op\u00e7\u00e3o pela qual o nome do pool deve ser passado.\r\n<h2>Implanta\u00e7\u00e3o e configura\u00e7\u00e3o de um servidor dhcpd4 usando namespace<\/h2>\r\nPara come\u00e7ar, vamos implantar outro servidor DHCP no mesmo servidor em que o SSG j\u00e1 est\u00e1 instalado, e ele estar\u00e1 dispon\u00edvel somente para a plataforma SSG. Isso se deve \u00e0 exist\u00eancia de v\u00e1rias pol\u00edticas corporativas que regulam o uso de servidores DHCP para atender \u00e0 rede interna e aos assinantes da operadora.\r\n\r\nPara isso, limitaremos as interfaces que o nosso servidor DHCP \u201couvir\u00e1\u201d e limitaremos os servidores aos quais o servidor DHCP responder\u00e1. Os servidores DHCP ser\u00e3o executados em namespaces diferentes do namespace de rede comum. Executaremos os servidores DHCP nos namespaces diferentes do namespace de rede comum.\r\n\r\nPrimeiro, vamos criar um namespace:\r\n<pre># ip netns add DHCP<\/pre>\r\nCrie o veth:\r\n<pre># ip link add veth0 type veth peer name veth1<\/pre>\r\nColoque a interface no namespace:\r\n<pre># ip link set veth1 netns DHCP<\/pre>\r\nHabilite as interfaces e atribua endere\u00e7os a elas:\r\n<pre># ip netns exec DHCP ip link set lo up\r\n# ip netns exec DHCP ip link set veth1 up\r\n# ip link set veth0 up\r\n# ip netns exec DHCP ip addr add 192.168.10.2\/30 dev veth1\r\n# ip addr add 192.168.10.1\/30 dev veth0<\/pre>\r\nEdite o arquivo de configura\u00e7\u00e3o do servidor DHCP:\r\n<pre>#Declarando a estrutura opt125 para VASExperts\r\noption space VASEX code width 1 length width 1;\r\noption VASEX.poolname code 1 = string;\r\noption space vivso code width 4 length width 1;\r\noption vivso.VASEX code 43823 = encapsula o VASEX;\r\noption vivso.iana code 0 = string;\r\noption op125 code 125 = encapsular vivso;\r\n\r\n#Endere\u00e7os do servidor DNS\r\noption domain-name-servers 192.168.1.4, 8.8.8.8;\r\n\r\n#Defini\u00e7\u00e3o do tempo de leasing\r\ndefault-lease-time 600;\r\nmax-lease-time 7200;\r\n\r\nlog-facility local7;\r\n\r\n#Declare as classes\r\nclasse \"vas-pool\" {\r\n  corresponde se a op\u00e7\u00e3o VASEX.poolname = \"test-pool\";\r\n}\r\n\r\nshared-network MyNetwork {\r\n\r\n#Declare uma sub-rede para retransmiss\u00e3o, pro\u00edba a emiss\u00e3o de endere\u00e7os dela para clientes desconhecidos\r\n  subnet 192.168.10.0 netmask 255.255.255.252 {\r\n  deny unknown-clients;\r\n  }\r\n\r\n#Declare a sub-rede para a classe vas-pool\r\n  subnet 192.168.3.0 netmask 255.255.255.0 {\r\n    pool {\r\n      intervalo 192.168.3.10 192.168.3.100;\r\n      permitir membros de \"vas-pool\";\r\n    }\r\n  }\r\n}\r\n\r\nExecute o ISC DHCP no namespace DHCP:\r\n\r\n# ip netns exec DHCP dhcpd -cf \/etc\/dhcp\/dhcpd.conf\r\n<\/pre>\r\n<h2>Implanta\u00e7\u00e3o e configura\u00e7\u00e3o dos servidores kea dhcp6<\/h2>\r\nUsaremos o servidor KEA como servidor DHCP IPv6.\r\n\r\nVamos fazer com que o arquivo de configura\u00e7\u00e3o tenha a seguinte apar\u00eancia:\r\n<pre>{\r\n\r\n\"Dhcp6\": {\r\n\r\n    \"interfaces-config\": {\r\n        \"interfaces\": [\"veth3\/2a03:dec0:666:2::2\"]\r\n    },\r\n\r\n    \"control-socket\": {\r\n        \"socket-type\": \"unix\",\r\n        \"socket-name\": \"\/tmp\/kea-dhcp6-ctrl.sock\"\r\n    },\r\n\r\n    \"lease-database\": {\r\n        \"type\": \"memfile\",\r\n        \"persist\": true,\r\n        \"lfc-interval\": 3600\r\n    },\r\n\r\n    \"expired-leases-processing\": {\r\n        \"reclaim-timer-wait-time\": 10,\r\n        \"flush-reclaimed-timer-wait-time\": 25,\r\n        \"hold-reclaimed-time\": 3600,\r\n        \"max-reclaimed-leases\": 100,\r\n        \"max-reclaim-time\": 250,\r\n        \"unwarned-reclaim-cycles\": 5\r\n    },\r\n\r\n    \"renew-timer\": 120,\r\n    \"rebind-timer\": 240,\r\n    \"preferred-lifetime\" (tempo de vida preferido): 180,\r\n    \"valid-lifetime\": 300,\r\n\r\n    \"option-data\": [\r\n        {\r\n            \"name\": \"dns-servers\",\r\n            \"data\": \"2001:4860:4860::8888, 2001:db8:2::100\"\r\n        }\r\n\r\n    ],\r\n        \"shared-networks\":[{\r\n                \"name\": \"MyNetworks\",\r\n                \"relay\": {\r\n                        \"ip-address\": \"2a03:dec0:666:2::1\"\r\n                },\r\n                \"subnet6\": [{\r\n                                \"client-class\": \"test-ipv6-pool\",\r\n                                \"subnet\": \"2403:d4c0:aa::\/48\",\r\n                                \"reservation-mode\" : \"disabled\",\r\n                                \"pd-pools\": [{\r\n                                           \"prefix\": \"2403:d4c0:aa::\",\r\n                                           \"prefix-len\": 48,\r\n                                           \"delegated-len\": 63\r\n                                        }],\r\n                                \"option-data\": [{\r\n                                           \"name\": \"dns-servers\",\r\n                                           \"data\": \"2001:db8:2::dead:beef, 2001:db8:2::cafe:babe\"\r\n                                        }]\r\n                }]\r\n        }],\r\n\r\n    \"client-classes\": [{\r\n        \"name\": \"test-ipv6-pool\",\r\n        \"test\": \"vendor[43823].option[1].hex == 'test-ipv6-pool'\"\r\n    }]\r\n},\r\n\r\n\"Logging\":{\r\n  \"loggers\": [{\r\n        \"name\": \"kea-dhcp6\",\r\n        \"output_options\": [\r\n            {\r\n                \"output\": \"\/var\/log\/kea-dhcp6.log\",\r\n                \"flush\": true\r\n            }\r\n        ],\r\n        \"severity\" (gravidade): \"DEBUG\",\r\n        \"debuglevel\": 99\r\n    }]\r\n}\r\n}<\/pre>\r\nDeve-se observar que o servidor DHCP do KEA para IPv6 n\u00e3o funciona corretamente em endere\u00e7os locais de link, portanto, usaremos endere\u00e7os IPv6 globais.\r\n\r\nVamos criar outro namespace e nome\u00e1-lo DHCP6:\r\n<pre># ip netns add DHCP6<\/pre>\r\nCrie o veth:\r\n<pre># ip link add veth2 type veth peer name veth3<\/pre>\r\nColoque a interface dentro do namespace:\r\n<pre># ip link set veth3 netns DHCP6<\/pre>\r\nHabilite as interfaces e atribua endere\u00e7os a elas:\r\n<pre># ip netns exec DHCP6 ip link set lo up\r\n# ip netns exec DHCP6 ip link set veth3 up\r\n# ip link set veth0 up\r\n# ip netns exec DHCP6 ip addr add 2a03:dec0:666:2::2\/64 dev veth3\r\n# ip addr add 2a03:dec0:666:2::1\/64 dev veth2<\/pre>\r\nH\u00e1 o atributo Framed-Pool em Access-Accept quando o cliente est\u00e1 conectado:\r\n<pre>VasExperts-User-Name = \"testuser\"\r\nFramed-Pool = \"test-pool\"\r\nFramed-IPv6-Pool = \"test-ipv6-pool\"\r\nVasExperts-Enable-Service = \"9:on\"\r\nVasExperts-Multi-IP-User = 1\r\nVasExperts-Service-Profile = \"11:user_nat\"<\/pre>\r\nDepois que a conex\u00e3o \u00e9 estabelecida, verificamos se os endere\u00e7os foram emitidos corretamente:\r\n<pre>Rec#0\r\n  MAC=18:0F:76:01:05:19 login='testuser'\r\n  SessionId=0x01bc (net=0xbc01) phase=[3] network\r\n  Tempo (now=764039602395618 ticks)\r\n         criado: 2020\/01\/27 14:33:55, -427.849052s (762838183927452 ticks)\r\n     \u00faltimo pacote: 2020\/01\/27 14:41:02, -0.805806s (764037339656521 ticks)\r\n     in\u00edcio da fase: 2020\/01\/27 14:33:57, -425.829550s (762843854773358 ticks)\r\n  session_timeout=0, idle_timeout=300, stop_reason=0\r\n  idx_slave=1, idx_iface=0, pppoe_max_mru=1492, acct_started=0, ip4_rejected=0, ip6_rejected=0\r\n  LCP:\r\n    Estado do LCP [9] aberto\r\n    contadores: restart=10, failure=5, peer-failure=5, terminate=2\r\n    ts_retrans: 2020\/01\/27 14:33:55, -427.785471s (762838362464891 ticks)\r\n    MRU=1480 Auth-proto: [3] MS_CHAPv2\r\n    request_id=0x34, service_req_id=0x01, my_magic_number=0x5f10c4ae, ping_counter=5\r\n  IPCP:\r\n    IP=192.168.3.13 GW=192.168.1.254 DNS1=192.168.1.4 DNS2=8.8.8.8\r\n    Framed-Pool: [test-pool] DHCP-Server=192.168.10.2 lease-time=599\r\n      pr\u00f3xima renova\u00e7\u00e3o: 2020\/01\/27 14:41:56, +53.178381s (764188929568748 ticks)\r\n    Estado do IPCP [9] aberto\r\n    contadores: restart=10, failure=5, peer-failure=0, terminate=2\r\n    ts_retrans: 2020\/01\/27 14:33:57, -425.829547s (762843854783043 ticks)\r\n    request_id=1\r\n    Pacote\/bytes de estat\u00edsticas: subs->inet=636\/59860, inet->subs=0\/0\r\n  IP6CP:\r\n    local=fe80::809a:d869:d86e:d032\r\n    prefix=2403:d4c0:aa:2::\/64\r\n    PD=2403:d4c0:aa:3::\/64\r\n    Framed-IPv6-Pool: [test-ipv6-pool] Prefix=2403:d4c0:aa:2::\/63 server-DUID=[0x0001000125BDB112C2DD08604508] lease-time=240\r\n      pr\u00f3xima renova\u00e7\u00e3o: 2020\/01\/27 14:43:33, +150.472972s (764462136946903 ticks)\r\n    Estado do IP6CP [9] aberto\r\n    contadores: restart=10, failure=5, peer-failure=0, terminate=2\r\n    ts_retrans: 2020\/01\/27 14:33:57, -425.826606s (762843863041510 ticks)\r\n    peer_iface_id=3661548372820007552, dhcpv6_iid=1, request_id=1\r\n    Pacote\/bytes de estat\u00edsticas: subs->inet=71\/8712, inet->subs=0\/0\r\n\r\n----------\r\nTOTAL: 1 recs<\/pre>\r\nPara automatizar a cria\u00e7\u00e3o do namespace, escreveremos o script createNetworkNamespace.sh e o adicionaremos \u00e0 execu\u00e7\u00e3o autom\u00e1tica (lembre-se de conceder permiss\u00f5es para executar esse script):\r\n<pre>#!\/bin\/bash\r\n\r\n#Se voc\u00ea receber a mensagem \"Object \"netns\" is unknown, try \"ip help\".\", ent\u00e3o voc\u00ea deve instalar estes m\u00f3dulos\r\n#yum install -y https:\/\/repos.fedorapeople.org\/repos\/openstack\/EOL\/openstack-icehouse\/epel-6\/kernel-2.6.32-358.123.2.openstack.el6.x86_64.rpm\r\n#yum install -y https:\/\/repos.fedorapeople.org\/openstack\/EOL\/openstack-grizzly\/epel-6\/iproute-2.6.32-130.el6ost.netns.2.x86_64.rpm\r\n\r\n#Adicionar novo espa\u00e7o de nome\r\nip netns add dhcp\r\n\r\n#Adicionar novo link\r\nip link add veth0 type veth peer name veth1\r\n\r\n#Define o veth para o namespace dhcp\r\nip link set veth1 netns dhcp\r\n\r\n#Ativar a interface\r\nip netns exec dhcp ip link set lo up\r\nip netns exec dhcp ip link set veth1 up\r\nip link set veth0 up\r\n\r\n#Definir endere\u00e7os IP para as interfaces\r\nip netns exec dhcp ip addr add 192.168.10.2\/30 dev veth1\r\nip addr add 192.168.10.1\/30 dev veth0\r\n\r\n#Executar o dhcpd no namespace\r\nip netns exec dhcp dhcpd -cf \/etc\/dhcp\/dhcpd.conf\r\n\r\n#Adicionar novo namespace\r\nip netns add dhcp6\r\n\r\n#Adicionar novo link\r\nip link add veth2 type veth peer name veth3\r\n\r\n#Define o veth para o namespace dhcp\r\nip link set veth3 netns dhcp6\r\n\r\n#Ativar a interface\r\nip link set veth2 up\r\nip netns exec dhcp6 ip link set lo up\r\nip netns exec dhcp6 ip link set veth3 up\r\n\r\n#Definir endere\u00e7os IP para as interfaces\r\nip addr add 2a03:dec0:666:2::1\/64 dev veth2\r\nip netns exec dhcp6 ip addr add 2a03:dec0:666:2::2\/64 dev veth3\r\n\r\n#Executar o kea no namespace\r\n\r\nip netns exec dhcp6 \/usr\/local\/sbin\/keactrl start -s dhcp6<\/pre>\r\nN\u00f3s o adicionaremos \u00e0 execu\u00e7\u00e3o autom\u00e1tica por meio do rc.local. Para fazer isso, adicione uma linha como esta a esse arquivo:\r\n<pre>sh \/your\/path\/to\/createNetworkNamespace.sh<\/pre>\r\nAgora, quando o servidor for reinicializado, os namespaces necess\u00e1rios ser\u00e3o criados e os servidores DHCP ser\u00e3o iniciados nesses namespaces.\r\n\r\nO <a href=\"\/solutions\/dpi-based-bras\/\">DPI-based BNG<\/a> \u00e9 uma solu\u00e7\u00e3o que permite n\u00e3o apenas o policiamento de assinantes, mas tamb\u00e9m <a href=\"\/products\/qoe-analytics\/\">m\u00e9tricas de qualidade de experi\u00eancia<\/a> e balanceamento de tr\u00e1fego para cada assinante e dispositivo. Entre em contato conosco para saber mais sobre a plataforma SSG e seu uso em redes de provedores de servi\u00e7os.\r\n\r\n [subscription id=\u201d 11987\u2033]Assine nosso boletim informativo e fique atualizado sobre os \u00faltimos desenvolvimentos e ofertas especiais.","protected":false},"excerpt":{"rendered":"<p>Atendendo \u00e0 solicita\u00e7\u00e3o de um dos clientes, os desenvolvedores da VAS Experts implementaram uma nova op\u00e7\u00e3o no Stingray Service Gateway: o suporte a pools de IPs, o que torna a plataforma mais flex\u00edvel. Com a ajuda da intera\u00e7\u00e3o com servidores DHCP padr\u00e3o, agora \u00e9 poss\u00edvel usar a fun\u00e7\u00e3o BNG do SSG com sistemas de faturamento que n\u00e3o t\u00eam um mecanismo nativo de emiss\u00e3o de endere\u00e7os sem usar solu\u00e7\u00f5es de script de terceiros.<\/p>\n","protected":false},"author":7,"featured_media":9452,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[49],"tags":[],"class_list":["post-9450","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-bng"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v23.1 - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>(English) VASExperts<\/title>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"WebPage\",\"@id\":\"https:\/\/vasexperts.com\/blog\/bng\/using-named-framed-pools-in-l2-bng\/\",\"url\":\"https:\/\/vasexperts.com\/blog\/bng\/using-named-framed-pools-in-l2-bng\/\",\"name\":\"[:en]Using named framed pools in L2 BNG (B-RAS) mode[:es]Utilizaci\u00f3n de \\\"named framed pools\\\" en L2 BNG[:fr]Utilisation de framed pools dans L2 BNG[:br]Usando pools de quadros nomeados no modo L2 BNG (B-RAS)\",\"isPartOf\":{\"@id\":\"https:\/\/vasexperts.com\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\/\/vasexperts.com\/blog\/bng\/using-named-framed-pools-in-l2-bng\/#primaryimage\"},\"image\":{\"@id\":\"https:\/\/vasexperts.com\/blog\/bng\/using-named-framed-pools-in-l2-bng\/#primaryimage\"},\"thumbnailUrl\":\"\/wp-content\/uploads\/2023\/08\/framed-pools-dlya-bras-l2.jpg\",\"datePublished\":\"2023-08-31T08:07:57+00:00\",\"dateModified\":\"2025-08-13T11:24:04+00:00\",\"author\":{\"@id\":\"https:\/\/vasexperts.com\/#\/schema\/person\/f4edcaef26fe49b6b59baf8ac5b62170\"},\"description\":\"[:en]VAS Experts developers have designed an option in BNG: support for IP pools, which makes the platform more flexible[:es]Los desarrolladores de VAS Experts implementaron una nueva opci\u00f3n en BNG: la compatibilidad con pools de IP`s, que hace que la plataforma sea m\u00e1s flexible[:fr]Les d\u00e9veloppeurs de VAS Experts ont con\u00e7u une option dans BNG : la prise en charge des pools d'adresses IP, ce qui rend la plateforme plus flexible.[:br]Os desenvolvedores do VAS Experts projetaram uma op\u00e7\u00e3o no BNG: suporte para pools de IP, o que torna a plataforma mais flex\u00edvel\",\"breadcrumb\":{\"@id\":\"https:\/\/vasexperts.com\/blog\/bng\/using-named-framed-pools-in-l2-bng\/#breadcrumb\"},\"inLanguage\":\"br-PT\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/vasexperts.com\/blog\/bng\/using-named-framed-pools-in-l2-bng\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"br-PT\",\"@id\":\"https:\/\/vasexperts.com\/blog\/bng\/using-named-framed-pools-in-l2-bng\/#primaryimage\",\"url\":\"\/wp-content\/uploads\/2023\/08\/framed-pools-dlya-bras-l2.jpg\",\"contentUrl\":\"\/wp-content\/uploads\/2023\/08\/framed-pools-dlya-bras-l2.jpg\",\"width\":900,\"height\":600,\"caption\":\"framed-pools-for-l2-bng\"},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/vasexperts.com\/blog\/bng\/using-named-framed-pools-in-l2-bng\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"\u0413\u043b\u0430\u0432\u043d\u0430\u044f \u0441\u0442\u0440\u0430\u043d\u0438\u0446\u0430\",\"item\":\"https:\/\/vasexperts.com\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Using named framed pools in L2 BNG\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/vasexperts.com\/#website\",\"url\":\"https:\/\/vasexperts.com\/\",\"name\":\"ITGLOBAL.COM\",\"description\":\"(English) VASExperts\",\"inLanguage\":\"br-PT\"},{\"@type\":\"Person\",\"@id\":\"https:\/\/vasexperts.com\/#\/schema\/person\/f4edcaef26fe49b6b59baf8ac5b62170\",\"name\":\"Elena Rudich\",\"url\":\"https:\/\/vasexperts.com\/br\/blog\/author\/elena-rudich\/\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"(English) VASExperts","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"WebPage","@id":"https:\/\/vasexperts.com\/blog\/bng\/using-named-framed-pools-in-l2-bng\/","url":"https:\/\/vasexperts.com\/blog\/bng\/using-named-framed-pools-in-l2-bng\/","name":"[:en]Using named framed pools in L2 BNG (B-RAS) mode[:es]Utilizaci\u00f3n de \"named framed pools\" en L2 BNG[:fr]Utilisation de framed pools dans L2 BNG[:br]Usando pools de quadros nomeados no modo L2 BNG (B-RAS)","isPartOf":{"@id":"https:\/\/vasexperts.com\/#website"},"primaryImageOfPage":{"@id":"https:\/\/vasexperts.com\/blog\/bng\/using-named-framed-pools-in-l2-bng\/#primaryimage"},"image":{"@id":"https:\/\/vasexperts.com\/blog\/bng\/using-named-framed-pools-in-l2-bng\/#primaryimage"},"thumbnailUrl":"\/wp-content\/uploads\/2023\/08\/framed-pools-dlya-bras-l2.jpg","datePublished":"2023-08-31T08:07:57+00:00","dateModified":"2025-08-13T11:24:04+00:00","author":{"@id":"https:\/\/vasexperts.com\/#\/schema\/person\/f4edcaef26fe49b6b59baf8ac5b62170"},"description":"[:en]VAS Experts developers have designed an option in BNG: support for IP pools, which makes the platform more flexible[:es]Los desarrolladores de VAS Experts implementaron una nueva opci\u00f3n en BNG: la compatibilidad con pools de IP`s, que hace que la plataforma sea m\u00e1s flexible[:fr]Les d\u00e9veloppeurs de VAS Experts ont con\u00e7u une option dans BNG : la prise en charge des pools d'adresses IP, ce qui rend la plateforme plus flexible.[:br]Os desenvolvedores do VAS Experts projetaram uma op\u00e7\u00e3o no BNG: suporte para pools de IP, o que torna a plataforma mais flex\u00edvel","breadcrumb":{"@id":"https:\/\/vasexperts.com\/blog\/bng\/using-named-framed-pools-in-l2-bng\/#breadcrumb"},"inLanguage":"br-PT","potentialAction":[{"@type":"ReadAction","target":["https:\/\/vasexperts.com\/blog\/bng\/using-named-framed-pools-in-l2-bng\/"]}]},{"@type":"ImageObject","inLanguage":"br-PT","@id":"https:\/\/vasexperts.com\/blog\/bng\/using-named-framed-pools-in-l2-bng\/#primaryimage","url":"\/wp-content\/uploads\/2023\/08\/framed-pools-dlya-bras-l2.jpg","contentUrl":"\/wp-content\/uploads\/2023\/08\/framed-pools-dlya-bras-l2.jpg","width":900,"height":600,"caption":"framed-pools-for-l2-bng"},{"@type":"BreadcrumbList","@id":"https:\/\/vasexperts.com\/blog\/bng\/using-named-framed-pools-in-l2-bng\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"\u0413\u043b\u0430\u0432\u043d\u0430\u044f \u0441\u0442\u0440\u0430\u043d\u0438\u0446\u0430","item":"https:\/\/vasexperts.com\/"},{"@type":"ListItem","position":2,"name":"Using named framed pools in L2 BNG"}]},{"@type":"WebSite","@id":"https:\/\/vasexperts.com\/#website","url":"https:\/\/vasexperts.com\/","name":"ITGLOBAL.COM","description":"(English) VASExperts","inLanguage":"br-PT"},{"@type":"Person","@id":"https:\/\/vasexperts.com\/#\/schema\/person\/f4edcaef26fe49b6b59baf8ac5b62170","name":"Elena Rudich","url":"https:\/\/vasexperts.com\/br\/blog\/author\/elena-rudich\/"}]}},"_links":{"self":[{"href":"https:\/\/vasexperts.com\/br\/wp-json\/wp\/v2\/posts\/9450"}],"collection":[{"href":"https:\/\/vasexperts.com\/br\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/vasexperts.com\/br\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/vasexperts.com\/br\/wp-json\/wp\/v2\/users\/7"}],"replies":[{"embeddable":true,"href":"https:\/\/vasexperts.com\/br\/wp-json\/wp\/v2\/comments?post=9450"}],"version-history":[{"count":11,"href":"https:\/\/vasexperts.com\/br\/wp-json\/wp\/v2\/posts\/9450\/revisions"}],"predecessor-version":[{"id":12997,"href":"https:\/\/vasexperts.com\/br\/wp-json\/wp\/v2\/posts\/9450\/revisions\/12997"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/vasexperts.com\/br\/wp-json\/wp\/v2\/media\/9452"}],"wp:attachment":[{"href":"https:\/\/vasexperts.com\/br\/wp-json\/wp\/v2\/media?parent=9450"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/vasexperts.com\/br\/wp-json\/wp\/v2\/categories?post=9450"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/vasexperts.com\/br\/wp-json\/wp\/v2\/tags?post=9450"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}