{"id":53735,"date":"2019-12-09T00:00:00","date_gmt":"2019-12-08T21:00:00","guid":{"rendered":"https:\/\/prohoster.info\/blog\/blog_prohoster\/nastoyashhee-summirovanie-internet-kanalov-openmptcprouter"},"modified":"2020-02-18T14:01:40","modified_gmt":"2020-02-18T11:01:40","slug":"nastoyashhee-summirovanie-internet-kanalov-openmptcprouter","status":"publish","type":"post","link":"https:\/\/prohoster.info\/pt\/blog\/administrirovanie\/nastoyashhee-summirovanie-internet-kanalov-openmptcprouter","title":{"rendered":"Agrega\u00e7\u00e3o real de canais de internet \u2014 OpenMPTCPRouter","gt_translate_keys":[{"key":"rendered","format":"text"}]},"content":{"rendered":"<p><img decoding=\"async\" alt=\"Agrega\u00e7\u00e3o real de canais de internet \u2014 OpenMPTCPRouter\" src=\"\/wp-content\/uploads\/2019\/12\/57414bebbced152eea13c218b7d1c239.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\n\u00c9 poss\u00edvel combinar v\u00e1rios canais de internet em um s\u00f3? H\u00e1 muitos mal-entendidos e mitos em torno desse tema, at\u00e9 mesmo engenheiros de redes experientes muitas vezes n\u00e3o sabem que isso \u00e9 poss\u00edvel. Na maioria das vezes, a combina\u00e7\u00e3o de canais \u00e9 erroneamente chamada de balanceamento em n\u00edvel NAT ou failover. Mas a verdadeira soma permite <b>estabelecer uma \u00fanica conex\u00e3o TCP simultaneamente por todos os canais de internet<\/b>, como em uma transmiss\u00e3o de v\u00eddeo, de modo que, caso qualquer um dos canais de internet falhe, a transmiss\u00e3o n\u00e3o seja interrompida. <\/p>\n<p>Existem solu\u00e7\u00f5es comerciais caras para transmiss\u00f5es de v\u00eddeo, mas esses dispositivos custam milhares de d\u00f3lares. O artigo descreve a configura\u00e7\u00e3o de um pacote gratuito e aberto chamado OpenMPTCPRouter, abordando mitos populares sobre a soma de canais.<br \/>\n<noindex><a rel=\"nofollow\" name=\"habracut\"><\/a><\/noindex><\/p>\n<h2>Mitos sobre a soma de canais<\/h2>\n<p>\nExistem muitos roteadores dom\u00e9sticos que suportam a fun\u00e7\u00e3o Multi-WAN. \u00c0s vezes, os fabricantes chamam isso de soma de canais, o que n\u00e3o \u00e9 exatamente correto. Muitos profissionais de rede acreditam que al\u00e9m de <noindex><a rel=\"nofollow\" href=\"https:\/\/ru.wikipedia.org\/wiki\/%D0%90%D0%B3%D1%80%D0%B5%D0%B3%D0%B8%D1%80%D0%BE%D0%B2%D0%B0%D0%BD%D0%B8%D0%B5_%D0%BA%D0%B0%D0%BD%D0%B0%D0%BB%D0%BE%D0%B2\">LACP<\/a><\/noindex> e soma em n\u00edvel L2, n\u00e3o existe outra forma de combina\u00e7\u00e3o de canais. J\u00e1 ouvi muitas vezes que isso \u00e9 imposs\u00edvel, por parte de pessoas que trabalham em telecomunica\u00e7\u00f5es. Portanto, vamos tentar esclarecer alguns mitos populares. <\/p>\n<h2>Balanceamento em n\u00edvel de conex\u00f5es IP<\/h2>\n<p>\nEste \u00e9 o m\u00e9todo mais acess\u00edvel e popular para utilizar v\u00e1rios canais de internet simultaneamente. Para simplificar, vamos imaginar que voc\u00ea tem tr\u00eas provedores de internet, cada um fornecendo um endere\u00e7o IP real de sua rede. Todos esses provedores est\u00e3o conectados a um roteador com suporte para a fun\u00e7\u00e3o Multi-WAN. Isso pode ser OpenWRT com o pacote mwan3, mikrotik, ubiquiti ou qualquer outro roteador dom\u00e9stico, j\u00e1 que essa op\u00e7\u00e3o n\u00e3o \u00e9 mais rara atualmente.<\/p>\n<p>Para simular a situa\u00e7\u00e3o, vamos supor que os provedores nos forneceram os seguintes endere\u00e7os:<\/p>\n<pre><code class=\"plaintext\">WAN1 \u2014 11.11.11.11\nWAN2 \u2014 22.22.22.22\nWAN2 \u2014 33.33.33.33\n<\/code><\/pre>\n<p>\nOu seja, conectando-se a um servidor remoto <b>example.com<\/b> Atrav\u00e9s de cada um dos provedores, o servidor remoto ver\u00e1 tr\u00eas IPs de origem independentes do cliente. O balanceamento permite dividir a carga entre os canais e utilizar os tr\u00eas simultaneamente. Para simplificar, vamos imaginar que estamos dividindo a carga igualmente entre todos os canais. Assim, quando o cliente abre um site que tem tr\u00eas imagens, ele carrega cada imagem atrav\u00e9s de um provedor separado. Do lado do site, isso aparece como conex\u00f5es vindas de tr\u00eas IPs diferentes.<\/p>\n<p><img decoding=\"async\" alt=\"Agrega\u00e7\u00e3o real de canais de internet \u2014 OpenMPTCPRouter\" src=\"\/wp-content\/uploads\/2019\/12\/b3f5e5d0d6007deb4d22d55d1df79e28.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\nNo balanceamento ao n\u00edvel de conex\u00f5es, cada conex\u00e3o TCP \u00e9 gerida por um provedor separado.<\/p>\n<p>Esse modo de balanceamento frequentemente traz problemas para os usu\u00e1rios. Por exemplo, muitos sites vinculam cookies e tokens rigorosamente ao IP do cliente, e se ele mudar repentinamente, a solicita\u00e7\u00e3o \u00e9 rejeitada ou o cliente \u00e9 desconectado do site. Isso \u00e9 frequentemente observado em sistemas de bancos e em outros sites com regras r\u00edgidas de sess\u00f5es de usu\u00e1rios. Aqui est\u00e1 um exemplo simples: arquivos de m\u00fasica no VK.com est\u00e3o dispon\u00edveis apenas com uma chave de sess\u00e3o v\u00e1lida, que est\u00e1 vinculada ao IP, e os clientes que usam esse tipo de balanceamento muitas vezes n\u00e3o conseguem reproduzir \u00e1udio, porque a solicita\u00e7\u00e3o foi feita atrav\u00e9s de um provedor diferente do qual a sess\u00e3o est\u00e1 vinculada.<\/p>\n<p><img decoding=\"async\" alt=\"Agrega\u00e7\u00e3o real de canais de internet \u2014 OpenMPTCPRouter\" src=\"\/wp-content\/uploads\/2019\/12\/ce6fec9b8f1b0df904cdf3ab0fa3f1f8.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\nAo baixar torrents, o balanceamento ao n\u00edvel de conex\u00f5es soma a largura de banda de todos os canais.<\/p>\n<p>Esse tipo de balanceamento permite a soma da velocidade do canal de internet, quando se usa v\u00e1rias conex\u00f5es. Por exemplo, se cada um dos tr\u00eas provedores tem uma velocidade de 100 Megabits, ao baixar torrents, obteremos 300 Megabits. Isso acontece porque o torrent abre v\u00e1rias conex\u00f5es, que s\u00e3o distribu\u00eddas entre todos os provedores e, no fim, utilizam completamente o canal.<\/p>\n<p>\u00c9 importante entender que uma \u00fanica conex\u00e3o TCP sempre passar\u00e1 por apenas um provedor. Ou seja, se estivermos baixando um \u00fanico grande arquivo via HTTP, essa conex\u00e3o ser\u00e1 realizada atrav\u00e9s de um dos provedores, e se a conex\u00e3o com esse provedor falhar, o download tamb\u00e9m ser\u00e1 interrompido. <\/p>\n<p><img decoding=\"async\" alt=\"Agrega\u00e7\u00e3o real de canais de internet \u2014 OpenMPTCPRouter\" src=\"\/wp-content\/uploads\/2019\/12\/14d728236f632c5e19ee762bc1911f48.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\nUma \u00fanica conex\u00e3o sempre usar\u00e1 apenas um canal de internet.<\/p>\n<p>Isso tamb\u00e9m se aplica a transmiss\u00f5es de v\u00eddeo. Se voc\u00ea estiver transmitindo v\u00eddeo em alguma plataforma como o Twitch, o balanceamento no n\u00edvel de IP n\u00e3o trar\u00e1 nenhum benef\u00edcio significativo, uma vez que a transmiss\u00e3o de v\u00eddeo ser\u00e1 feita por meio de uma \u00fanica conex\u00e3o de IP. Nesse caso, se o provedor WAN tiver problemas de conectividade, como perda de pacotes ou redu\u00e7\u00e3o de velocidade, voc\u00ea n\u00e3o conseguir\u00e1 mudar instantaneamente para outro provedor. A transmiss\u00e3o precisar\u00e1 ser interrompida e reconectada. <\/p>\n<h2>Agrega\u00e7\u00e3o real de canais<\/h2>\n<p>\nA agrega\u00e7\u00e3o real de canais permite que uma \u00fanica conex\u00e3o seja feita para o Twitch atrav\u00e9s de todos os provedores, de forma que, se qualquer um dos provedores falhar, a conex\u00e3o n\u00e3o seja interrompida. Esta \u00e9 uma tarefa surpreendentemente complexa, que ainda n\u00e3o tem uma solu\u00e7\u00e3o ideal. Muitas pessoas nem sabem que isso \u00e9 poss\u00edvel! <\/p>\n<p>Com as ilustra\u00e7\u00f5es anteriores, lembramos que um servidor como o Twitch s\u00f3 pode aceitar nosso fluxo de v\u00eddeo de um \u00fanico endere\u00e7o IP de origem, o que significa que ele deve ser sempre constante, independentemente de quais provedores est\u00e3o fora de servi\u00e7o e quais est\u00e3o operando. Para conseguir isso, precisaremos de um servidor agregador que termine todas as nossas conex\u00f5es e as combine em uma s\u00f3.<\/p>\n<p><img decoding=\"async\" alt=\"Agrega\u00e7\u00e3o real de canais de internet \u2014 OpenMPTCPRouter\" src=\"\/wp-content\/uploads\/2019\/12\/0baf774c65d15a307bdb0ffef3ff53c6.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\nO servidor agregador agrega todos os canais em um \u00fanico t\u00fanel. Todas as conex\u00f5es ocorrem a partir do endere\u00e7o do servidor agregador.<\/p>\n<p>Nesse esquema, todos os provedores s\u00e3o utilizados, e a desconex\u00e3o de qualquer um deles n\u00e3o causar\u00e1 a interrup\u00e7\u00e3o da conex\u00e3o com o servidor do Twitch. Na verdade, \u00e9 um tipo especial de t\u00fanel VPN, que opera com v\u00e1rios canais de internet ao mesmo tempo. O principal objetivo desse esquema \u00e9 obter a melhor qualidade poss\u00edvel de conex\u00e3o. Se um dos provedores come\u00e7ar a ter problemas, como perda de pacotes ou aumento de lat\u00eancia, isso n\u00e3o deve afetar a qualidade da conex\u00e3o, pois a carga ser\u00e1 automaticamente redistribu\u00edda por outros canais mais confi\u00e1veis dispon\u00edveis. <\/p>\n<h3>Solu\u00e7\u00f5es comerciais<\/h3>\n<p>\nEste problema tem preocupado h\u00e1 muito tempo aqueles que fazem transmiss\u00f5es ao vivo de eventos e n\u00e3o t\u00eam acesso a uma internet de qualidade. Para essas situa\u00e7\u00f5es, existem algumas solu\u00e7\u00f5es comerciais, por exemplo, a empresa Teradek fabrica roters robustos nos quais podem ser inseridos v\u00e1rios modems USB:<\/p>\n<p><img decoding=\"async\" alt=\"Agrega\u00e7\u00e3o real de canais de internet \u2014 OpenMPTCPRouter\" src=\"\/wp-content\/uploads\/2019\/12\/b9c23f4cebed86dff16bf4b72b7890b1.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\nRoteador para transmiss\u00f5es de v\u00eddeo com fun\u00e7\u00e3o de soma de canais<\/p>\n<p>Esses dispositivos geralmente possuem a capacidade de capturar sinais de v\u00eddeo via HDMI ou SDI. Junto com o roteador, \u00e9 vendida uma assinatura do servi\u00e7o de soma de canais, que tamb\u00e9m inclui o processamento do fluxo de v\u00eddeo, sua recodifica\u00e7\u00e3o e retransmiss\u00e3o. O pre\u00e7o desses dispositivos come\u00e7a em 2 mil d\u00f3lares com um conjunto de modems, al\u00e9m de uma assinatura independente do servi\u00e7o. <\/p>\n<p>\u00c0s vezes, isso parece bastante intimidador:<\/p>\n<p><img decoding=\"async\" alt=\"Agrega\u00e7\u00e3o real de canais de internet \u2014 OpenMPTCPRouter\" src=\"\/wp-content\/uploads\/2019\/12\/66c5afe3903444624707c338c9610036.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<\/p>\n<h2>Configurando o OpenMPTCPRouter<\/h2>\n<p>\nProtocolo <noindex><a rel=\"nofollow\" href=\"https:\/\/www.multipath-tcp.org\/\">MP-TCP<\/a><\/noindex> (MultiPath TCP) foi criado para possibilitar a conex\u00e3o simult\u00e2nea por m\u00faltiplos canais. Por exemplo, ele <noindex><a rel=\"nofollow\" href=\"https:\/\/developer.apple.com\/documentation\/foundation\/urlsessionconfiguration\/improving_network_reliability_using_multipath_tcp\">\u00e9 suportado pelo iOS<\/a><\/noindex> e pode conectar simultaneamente a um servidor remoto via WiFi e atrav\u00e9s da rede celular. \u00c9 importante entender que n\u00e3o se trata de duas conex\u00f5es TCP separadas, mas sim de uma \u00fanica conex\u00e3o estabelecida por dois canais. Para que isso funcione, o servidor remoto tamb\u00e9m deve suportar MPTCP.<\/p>\n<p><noindex><a rel=\"nofollow\" href=\"https:\/\/www.openmptcprouter.com\/\">OpenMPTCPRouter<\/a><\/noindex> \u00e9 um projeto de roteador de software aberto que permite realmente somar canais. Os autores afirmam que o projeto est\u00e1 em estado alpha, mas j\u00e1 pode ser utilizado. Ele consiste em duas partes: um servidor de soma que \u00e9 hospedado na internet e o roteador, ao qual se conectam v\u00e1rios provedores de internet e os pr\u00f3prios dispositivos cliente: computadores, telefones. Como roteador do usu\u00e1rio, pode ser um Raspberry Pi, alguns roteadores WiFi ou um computador comum. H\u00e1 compila\u00e7\u00f5es prontas para v\u00e1rias plataformas, o que \u00e9 muito conveniente.<\/p>\n<p><img decoding=\"async\" alt=\"Agrega\u00e7\u00e3o real de canais de internet \u2014 OpenMPTCPRouter\" src=\"\/wp-content\/uploads\/2019\/12\/46b0c848f92ce85ffc0a4ea10144966f.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\nPrinc\u00edpio de funcionamento do OpenMPTCPRouter<\/p>\n<h2>Configura\u00e7\u00e3o do servidor de soma<\/h2>\n<p>\nO servidor de soma est\u00e1 hospedado na internet e termina conex\u00f5es de todos os canais do roteador cliente em uma \u00fanica conex\u00e3o. O endere\u00e7o IP desse servidor ser\u00e1 o endere\u00e7o externo ao acessar a internet atrav\u00e9s do OpenMPTCPRouter. <\/p>\n<p>Para esta tarefa, usaremos um servidor VPS com Debian 10.<\/p>\n<p>Requisitos para o servidor de soma:<\/p>\n<ul>\n<li>MPTCP n\u00e3o funciona em virtualiza\u00e7\u00e3o OpenVZ<\/li>\n<li>Deve haver a possibilidade de instalar um kernel Linux personalizado<\/li>\n<\/ul>\n<p>\nO servidor \u00e9 instalado com a execu\u00e7\u00e3o de um \u00fanico comando. O script instalar\u00e1 um kernel com suporte a mptcp e todos os pacotes necess\u00e1rios. Scripts de instala\u00e7\u00e3o est\u00e3o dispon\u00edveis para Ubuntu e Debian.<\/p>\n<pre><code class=\"plaintext\">wget -O - http:\/\/www.openmptcprouter.com\/server\/debian10-x86_64.sh | sh\n<\/code><\/pre>\n<p>\nResultado da instala\u00e7\u00e3o bem-sucedida do servidor.<\/p>\n<p><img decoding=\"async\" alt=\"Agrega\u00e7\u00e3o real de canais de internet \u2014 OpenMPTCPRouter\" src=\"\/wp-content\/uploads\/2019\/12\/592fd8d39eb4eaec5e80f4fa3b635a53.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nEstamos salvando as senhas; elas nos ser\u00e3o necess\u00e1rias para configurar o roteador do cliente, e reiniciamos. \u00c9 importante lembrar que, ap\u00f3s a instala\u00e7\u00e3o, o SSH estar\u00e1 dispon\u00edvel na porta 65222. Depois da reinicializa\u00e7\u00e3o, precisamos garantir que iniciamos com o novo kernel.<\/p>\n<pre><code class=\"plaintext\">uname -a \nLinux test-server.local 4.19.67-mptcp\n<\/code><\/pre>\n<p>\nVemos que, ao lado do n\u00famero da vers\u00e3o, h\u00e1 a inscri\u00e7\u00e3o mptcp, o que significa que o kernel foi instalado corretamente. <\/p>\n<h2>Configura\u00e7\u00e3o do roteador do cliente<\/h2>\n<p>\nSobre <noindex><a rel=\"nofollow\" href=\"https:\/\/www.openmptcprouter.com\/download\">site do projeto<\/a><\/noindex> s\u00e3o disponibilizadas compila\u00e7\u00f5es prontas para algumas plataformas, como Raspberry Pi, Banana Pi, roteadores Lynksys e m\u00e1quinas virtuais. <br \/>\nEsta parte do openmptcprouter \u00e9 baseada no OpenWRT, utilizando a interface LuCI, conhecida por todos que j\u00e1 lidaram com o OpenWRT. A distribui\u00e7\u00e3o pesa cerca de 50 MB! <\/p>\n<p><img decoding=\"async\" alt=\"Agrega\u00e7\u00e3o real de canais de internet \u2014 OpenMPTCPRouter\" src=\"\/wp-content\/uploads\/2019\/12\/0cb2fed29f35d42ab0dc8db1a9a160f8.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nComo bancada de testes, estarei usando um Raspberry Pi e alguns modems USB com diferentes operadoras: MTS e MegaFon. N\u00e3o acho necess\u00e1rio explicar como gravar a imagem em um cart\u00e3o SD. <\/p>\n<p>Inicialmente, a porta Ethernet no Raspberry Pi est\u00e1 configurada como lan com um endere\u00e7o IP est\u00e1tico. <b>192.168.100.1<\/b>. Para evitar bagun\u00e7a com cabos na mesa, conectei o Raspberry Pi ao ponto de acesso WiFi e atribu\u00ed um endere\u00e7o est\u00e1tico ao adaptador WiFi do computador. <b>192.168.100.2<\/b>. O servidor DHCP por padr\u00e3o n\u00e3o est\u00e1 ativado, ent\u00e3o precisamos usar endere\u00e7os est\u00e1ticos.<\/p>\n<p>Agora podemos acessar a interface web. <noindex><a rel=\"nofollow\" href=\"http:\/\/192.168.100.1\">192.168.100.1<\/a><\/noindex> <\/p>\n<p>Na primeira entrada, o sistema pedir\u00e1 para definir a senha root; com essa mesma senha, o SSH estar\u00e1 dispon\u00edvel.<\/p>\n<p><img decoding=\"async\" alt=\"Agrega\u00e7\u00e3o real de canais de internet \u2014 OpenMPTCPRouter\" src=\"\/wp-content\/uploads\/2019\/12\/1052360105d63d329aaaf0c3983a423e.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\nNas configura\u00e7\u00f5es de LAN, podemos definir a sub-rede desejada e ativar o servidor DHCP.<\/p>\n<p>Estou usando modems que s\u00e3o reconhecidos como interfaces USB Ethernet com um servidor DHCP separado, portanto, isso exigiu a instala\u00e7\u00e3o <noindex><a rel=\"nofollow\" href=\"https:\/\/protyposis.net\/blog\/using-the-huawei-e3372-hi-link-lte-dongle-with-openwrt\/\">de pacotes adicionais.<\/a><\/noindex>. O procedimento \u00e9 id\u00eantico \u00e0 configura\u00e7\u00e3o de modems no OpenWRT comum, ent\u00e3o n\u00e3o vou abordar isso aqui. <\/p>\n<p>Em seguida, \u00e9 necess\u00e1rio configurar as interfaces WAN. Inicialmente, o sistema cria duas interfaces virtuais WAN1 e WAN2. \u00c9 necess\u00e1rio atribuir um dispositivo f\u00edsico a elas, no meu caso, s\u00e3o os nomes das interfaces dos modems USB. <\/p>\n<p>Para n\u00e3o confundir os nomes das interfaces, recomendo observar as mensagens do dmesg, conectando-se via SSH. <\/p>\n<p>Como meus modems atuam como roteadores e possuem um servidor DHCP, tive que alterar as configura\u00e7\u00f5es de suas faixas internas de rede e desativar o servidor DHCP, pois inicialmente ambos os modems atribuem endere\u00e7os de uma \u00fanica rede, o que causa conflito. <\/p>\n<p>OpenMPTCPRouter requer que os endere\u00e7os das interfaces WAN sejam est\u00e1ticos, ent\u00e3o criamos sub-redes para os modems e configuramos no menu sistema \u2192 openmptcprouter \u2192 configura\u00e7\u00f5es de interface. Aqui tamb\u00e9m \u00e9 necess\u00e1rio indicar o endere\u00e7o IP e a chave do servidor, obtida na etapa de instala\u00e7\u00e3o do servidor agregador.<\/p>\n<p><img decoding=\"async\" alt=\"Agrega\u00e7\u00e3o real de canais de internet \u2014 OpenMPTCPRouter\" src=\"\/wp-content\/uploads\/2019\/12\/a753961a88c417531f2078c8a98ae051.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nSe a configura\u00e7\u00e3o for bem-sucedida, a p\u00e1gina de status deve exibir uma imagem semelhante. \u00c9 poss\u00edvel ver que o roteador conseguiu se conectar ao servidor agregador e ambos os canais est\u00e3o funcionando normalmente.<\/p>\n<p><img decoding=\"async\" alt=\"Agrega\u00e7\u00e3o real de canais de internet \u2014 OpenMPTCPRouter\" src=\"\/wp-content\/uploads\/2019\/12\/72bf99bcdb075d7a8393f3543fc2cbb0.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nO modo padr\u00e3o utilizado \u00e9 shadowsocks + mptcp. Este \u00e9 um proxy que encapsula todas as conex\u00f5es. Inicialmente, ele est\u00e1 configurado para processar apenas TCP, mas pode-se habilitar tamb\u00e9m o UDP.<\/p>\n<p><img decoding=\"async\" alt=\"Agrega\u00e7\u00e3o real de canais de internet \u2014 OpenMPTCPRouter\" src=\"\/wp-content\/uploads\/2019\/12\/a466bac174ea951829a4d63e24216e73.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nSe n\u00e3o houver erros na p\u00e1gina de status, a configura\u00e7\u00e3o pode ser considerada conclu\u00edda. <br \/>\nCom alguns provedores, pode ocorrer uma situa\u00e7\u00e3o em que a bandeira mptcp na rota do tr\u00e1fego \u00e9 cortada, e ent\u00e3o aparecer\u00e1 o seguinte erro:<\/p>\n<p><img decoding=\"async\" alt=\"Agrega\u00e7\u00e3o real de canais de internet \u2014 OpenMPTCPRouter\" src=\"\/wp-content\/uploads\/2019\/12\/7da3f5ecf52aad7a255c04f7abc17b3b.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nNesse caso, \u00e9 poss\u00edvel utilizar outro modo de opera\u00e7\u00e3o, sem usar MPTCP. Mais detalhes sobre isso. <noindex><a rel=\"nofollow\" href=\"https:\/\/github.com\/Ysurac\/openmptcprouter\/issues\/177\">aqui<\/a><\/noindex>.<\/p>\n<h2>Conclus\u00e3o<\/h2>\n<p>\nO projeto OpenMPTCPRouter \u00e9 muito interessante e importante, pois talvez seja a \u00fanica solu\u00e7\u00e3o aberta abrangente para o problema de agrega\u00e7\u00e3o de canais. Todo o resto \u00e9 ou completamente fechado e propriet\u00e1rio, ou apenas m\u00f3dulos separados, com os quais uma pessoa comum n\u00e3o consegue lidar. Neste est\u00e1gio de desenvolvimento, o projeto ainda est\u00e1 bastante cru, com documenta\u00e7\u00e3o extremamente escassa, muitas coisas simplesmente n\u00e3o est\u00e3o descritas. Mas ainda assim, ele funciona. Espero que continue a se desenvolver e que consigamos roteadores dom\u00e9sticos que consigam agregar canais corretamente desde o in\u00edcio.<\/p>\n<p><noindex><a rel=\"nofollow\" href=\"https:\/\/vdsina.ru\/?partner=7d159c89hz\"><img decoding=\"async\" alt=\"Agrega\u00e7\u00e3o real de canais de internet \u2014 OpenMPTCPRouter\" src=\"\/wp-content\/uploads\/2019\/12\/6aa5c622c5c2ff89585d06b20eea9c4e.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<\/a><\/noindex><\/p>\n<h3>Siga nosso desenvolvedor no Instagram<\/h3>\n<p>\n<noindex><a rel=\"nofollow\" href=\"http:\/\/bit.ly\/34w4T9B\"><img decoding=\"async\" alt=\"Agrega\u00e7\u00e3o real de canais de internet \u2014 OpenMPTCPRouter\" src=\"\/wp-content\/uploads\/2019\/12\/c7ad32f2cc2dc803071e9dae29947457.jpg\" style=\"display:block;margin: 0 auto;\" \/><\/a><\/noindex><br \/>\n<br \/>Fonte: <a content=\"nofollow\" rel=\"nofollow\" href=\"https:\/\/habr.com\/ru\/company\/vdsina\/blog\/479026\/\">habr.com<\/a><\/p>","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"excerpt":{"rendered":"<p>\u041c\u043e\u0436\u043d\u043e \u043b\u0438 \u043e\u0431\u044a\u0435\u0434\u0438\u043d\u0438\u0442\u044c \u043d\u0435\u0441\u043a\u043e\u043b\u044c\u043a\u043e \u0438\u043d\u0442\u0435\u0440\u043d\u0435\u0442-\u043a\u0430\u043d\u0430\u043b\u043e\u0432 \u0432 \u043e\u0434\u0438\u043d? \u0412\u043e\u043a\u0440\u0443\u0433 \u044d\u0442\u043e\u0439 \u0442\u0435\u043c\u044b \u043a\u0443\u0447\u0430 \u0437\u0430\u0431\u043b\u0443\u0436\u0434\u0435\u043d\u0438\u0439 \u0438 \u043c\u0438\u0444\u043e\u0432, \u0434\u0430\u0436\u0435 \u0441\u0435\u0442\u0435\u0432\u044b\u0435 \u0438\u043d\u0436\u0435\u043d\u0435\u0440\u044b \u0441 \u043e\u043f\u044b\u0442\u043e\u043c \u0447\u0430\u0441\u0442\u043e \u043d\u0435 \u0437\u043d\u0430\u044e\u0442 \u043e \u0442\u043e\u043c, \u0447\u0442\u043e \u044d\u0442\u043e \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e. \u0412 \u0431\u043e\u043b\u044c\u0448\u0438\u043d\u0441\u0442\u0432\u0435 \u0441\u043b\u0443\u0447\u0430\u0435\u0432, \u043e\u0431\u044a\u0435\u0434\u0438\u043d\u0435\u043d\u0438\u0435\u043c \u043a\u0430\u043d\u0430\u043b\u043e\u0432 \u043e\u0448\u0438\u0431\u043e\u0447\u043d\u043e \u043d\u0430\u0437\u044b\u0432\u0430\u044e\u0442 \u0431\u0430\u043b\u0430\u043d\u0441\u0438\u0440\u043e\u0432\u043a\u0443 \u043d\u0430 \u0443\u0440\u043e\u0432\u043d\u0435 NAT \u0438\u043b\u0438 failover. \u041d\u043e \u043d\u0430\u0441\u0442\u043e\u044f\u0449\u0435\u0435 \u0441\u0443\u043c\u043c\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435 \u043f\u043e\u0437\u0432\u043e\u043b\u044f\u0435\u0442 \u043f\u0443\u0441\u0442\u0438\u0442\u044c \u043e\u0434\u043d\u043e \u0435\u0434\u0438\u043d\u0441\u0442\u0432\u0435\u043d\u043d\u043e\u0435 TCP-\u043f\u043e\u0434\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u0435 \u043e\u0434\u043d\u043e\u0432\u0440\u0435\u043c\u0435\u043d\u043d\u043e \u043f\u043e \u0432\u0441\u0435\u043c \u0438\u043d\u0442\u0435\u0440\u043d\u0435\u0442-\u043a\u0430\u043d\u0430\u043b\u0430\u043c, \u043d\u0430\u043f\u0440\u0438\u043c\u0435\u0440 \u0432\u0438\u0434\u0435\u043e\u0442\u0440\u0430\u043d\u0441\u043b\u044f\u0446\u0438\u044e \u0442\u0430\u043a, [&hellip;]<\/p>\n","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[688],"tags":[],"class_list":["post-53735","post","type-post","status-publish","format-standard","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=\"\u041c\u043e\u0436\u043d\u043e \u043b\u0438 \u043e\u0431\u044a\u0435\u0434\u0438\u043d\u0438\u0442\u044c \u043d\u0435\u0441\u043a\u043e\u043b\u044c\u043a\u043e.\" \/>\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\/pt\/blog\/administrirovanie\/nastoyashhee-summirovanie-internet-kanalov-openmptcprouter\" \/>\n\t\t<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 5.0.3\" \/>\n\t\t<meta property=\"og:locale\" content=\"pt_PT\" \/>\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\u041d\u0430\u0441\u0442\u043e\u044f\u0449\u0435\u0435 \u0441\u0443\u043c\u043c\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435 \u0438\u043d\u0442\u0435\u0440\u043d\u0435\u0442-\u043a\u0430\u043d\u0430\u043b\u043e\u0432 \u2014 OpenMPTCPRouter | ProHoster\" \/>\n\t\t<meta property=\"og:description\" content=\"\u041c\u043e\u0436\u043d\u043e \u043b\u0438 \u043e\u0431\u044a\u0435\u0434\u0438\u043d\u0438\u0442\u044c \u043d\u0435\u0441\u043a\u043e\u043b\u044c\u043a\u043e.\" \/>\n\t\t<meta property=\"og:url\" content=\"https:\/\/prohoster.info\/pt\/blog\/administrirovanie\/nastoyashhee-summirovanie-internet-kanalov-openmptcprouter\" \/>\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=\"2019-12-08T21:00:00+00:00\" \/>\n\t\t<meta property=\"article:modified_time\" content=\"2020-02-18T11:01:40+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\udd47Agrega\u00e7\u00e3o real de canais de internet \u2014 OpenMPTCPRouter | ProHoster","description":"\u00c9 poss\u00edvel agregar v\u00e1rios.","canonical_url":"https:\/\/prohoster.info\/pt\/blog\/administrirovanie\/nastoyashhee-summirovanie-internet-kanalov-openmptcprouter","robots":"max-image-preview:large","keywords":"","webmasterTools":{"miscellaneous":""},"schema":null,"og:locale":"pt_PT","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\u041d\u0430\u0441\u0442\u043e\u044f\u0449\u0435\u0435 \u0441\u0443\u043c\u043c\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435 \u0438\u043d\u0442\u0435\u0440\u043d\u0435\u0442-\u043a\u0430\u043d\u0430\u043b\u043e\u0432 \u2014 OpenMPTCPRouter | ProHoster","og:description":"\u041c\u043e\u0436\u043d\u043e \u043b\u0438 \u043e\u0431\u044a\u0435\u0434\u0438\u043d\u0438\u0442\u044c \u043d\u0435\u0441\u043a\u043e\u043b\u044c\u043a\u043e.","og:url":"https:\/\/prohoster.info\/pt\/blog\/administrirovanie\/nastoyashhee-summirovanie-internet-kanalov-openmptcprouter","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":"2019-12-08T21:00:00+00:00","article:modified_time":"2020-02-18T11:01:40+00:00","article:publisher":"https:\/\/www.facebook.com\/prohoster","article:author":"https:\/\/www.facebook.com\/prohoster"},"aioseo_meta_data":{"post_id":"53735","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":"2026-01-24 08:33:22","breadcrumb_settings":null,"limit_modified_date":false,"reviewed_by":null,"ai":null,"created":"2021-02-28 10:46:32","updated":"2026-01-24 08:33:22","focus_keyword":null,"additional_keywords":null,"truseo_locale":null},"gt_translate_keys":[{"key":"link","format":"url"}],"_links":{"self":[{"href":"https:\/\/prohoster.info\/pt\/wp-json\/wp\/v2\/posts\/53735","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/prohoster.info\/pt\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/prohoster.info\/pt\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/prohoster.info\/pt\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/prohoster.info\/pt\/wp-json\/wp\/v2\/comments?post=53735"}],"version-history":[{"count":0,"href":"https:\/\/prohoster.info\/pt\/wp-json\/wp\/v2\/posts\/53735\/revisions"}],"wp:attachment":[{"href":"https:\/\/prohoster.info\/pt\/wp-json\/wp\/v2\/media?parent=53735"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/prohoster.info\/pt\/wp-json\/wp\/v2\/categories?post=53735"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/prohoster.info\/pt\/wp-json\/wp\/v2\/tags?post=53735"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}