+ Responder ao Tópico



  1. #1

    Question EdgeMax Load-Balance Https com problemas

    Olá pessoal, tudo bem? Acompanho o fórum a mais de 1 ano, sou novo neste mundo e estou precisando de ajuda.

    Possuo um Coworking e tenho os seguintes equipamentos:

    Edge Router PRO 8 portas com 3 em uso, rodando EdgeOS V1.10.3
    • ETH0 - DHCP
      • Switch 16 portas Gigabit TPLINK
        1. Edge router
        2. DVR
        3. UniFi AP (1) - Recepção - Canal 6
        4. UniFi AP (2) - Área Coworking - Canal 11
        5. UniFi AP (3) - Cafeteria - Canal 6
        6. Sala reunião
        7. Sala privativa 1
        8. Sala privativa 2
        9. Sala privativa 3
          1. Switch TP-Link Gigabit 8 portas

        10. Sala privativa 4
        11. Sala privativa 5
          1. Switch TP-Link Gigabit 8 portas

        12. Sala privativa 6
        13. Sala privativa 7
          1. Switch TP-Link Gigabit 8 portas

        14. Área Coworking
          1. Switch TP-Link Gigabit 16 portas

        15. Área Coworking
          1. Switch TP-Link Gigabit 16 portas

        16. Recepção

    • ETH1 - Vivo fibra empresa - 300Mb
    • ETH2 - Net empresa - 240Mb


    Basicamente é essa a minha topologia de rede.
    As demais portas do router não estão sendo usadas, estão disponíveis para outros links caso aumente o número de clientes.

    Os dois links de internet que chegam na porta ETH1 e 2. Os links estão ligados com balanceamento de carga (load balance) que fiz utilizando o assistente (wizard).

    Abaixo seguem as fotos com os detalhes da configuração atual do meu EdgeRouter PRO

    Clique na imagem para uma versão maior

Nome:	         edgerouter-1.PNG
Visualizações:	275
Tamanho: 	58,5 KB
ID:      	69120 Clique na imagem para uma versão maior

Nome:	         edgerouter-2.PNG
Visualizações:	235
Tamanho: 	70,4 KB
ID:      	69121Clique na imagem para uma versão maior

Nome:	         edgerouter-3.PNG
Visualizações:	195
Tamanho: 	52,0 KB
ID:      	69122Clique na imagem para uma versão maior

Nome:	         edgerouter-4.PNG
Visualizações:	227
Tamanho: 	59,8 KB
ID:      	69123Clique na imagem para uma versão maior

Nome:	         edgerouter-5.PNG
Visualizações:	198
Tamanho: 	61,9 KB
ID:      	69124Clique na imagem para uma versão maior

Nome:	         edgerouter-6-1.PNG
Visualizações:	174
Tamanho: 	50,8 KB
ID:      	69125Clique na imagem para uma versão maior

Nome:	         edgerouter-6-2.PNG
Visualizações:	179
Tamanho: 	51,9 KB
ID:      	69126Clique na imagem para uma versão maior

Nome:	         edgerouter-7-1.PNG
Visualizações:	182
Tamanho: 	55,5 KB
ID:      	69127Clique na imagem para uma versão maior

Nome:	         edgerouter-7-2.PNG
Visualizações:	144
Tamanho: 	53,8 KB
ID:      	69128Clique na imagem para uma versão maior

Nome:	         edgerouter-7-3.PNG
Visualizações:	177
Tamanho: 	53,6 KB
ID:      	69129Clique na imagem para uma versão maior

Nome:	         edgerouter-7-4.PNG
Visualizações:	243
Tamanho: 	51,0 KB
ID:      	69130Clique na imagem para uma versão maior

Nome:	         edgerouter-7-5.PNG
Visualizações:	145
Tamanho: 	52,2 KB
ID:      	69131Clique na imagem para uma versão maior

Nome:	         edgerouter-7-6.PNG
Visualizações:	174
Tamanho: 	59,5 KB
ID:      	69132Clique na imagem para uma versão maior

Nome:	         edgerouter-7-7.PNG
Visualizações:	139
Tamanho: 	54,6 KB
ID:      	69133Clique na imagem para uma versão maior

Nome:	         edgerouter-7-8.PNG
Visualizações:	201
Tamanho: 	56,5 KB
ID:      	69134

    ETH1 weight com 70 (não coloquei o modem da vivo em bridge, ele está normal e no EdgeRouter a conexão está DHCP)
    ETH2 weight com 30 (o modem da Net está em bridge, e no EdgeRouter a conexão está DHCP)

    O meu problema é que quando uma pessoa acessa um site HTTPS (ex: bancos) a conexão cai devido o balanceamento de carga trocar o link, e meus clientes estão reclamando muito disso. A solução temporária que ofereci para eles foi utilizarem o navegador Opera com VPN ativo, enquanto busco ajuda.

    Procurei diversos artigos, inclusive nos fóruns da Ubiquiti, porém achei diversos tipos de configurações e um tanto confusas, tentei implementar algumas, mas não consegui

    Eu gostaria de fazer a seguinte configuração no meu EdgeRouter, e caso alguém consiga me ajudar, serei muito grato:
    1. Load Balance com os dois links -
      1. ETH0 - DHCP
      2. ETH1 - Vivo 300Mb
      3. ETH2 - Net 240Mb

    2. Manter a conexão em apenas 1 link quando acessar HTTPS (não sei como fazer)
    3. Preferencialmente usar o link da vivo (ETH1) devido ele ser o mais parrudo que tenho (por isso configurei ETH1 - 70%>Route>Default )
    4. Caso um dos links fique down (caia) usarmos apenas 1 link (porém não gostaria de deixar o segundo link, ex ETH2 com failover-only ligado, gostaria que ele ficasse operando com o outro link e em caso de queda, um dos dois assumisse)


    Alguém consegue me ajudar?

    desde já, muito obrigado!
    abraços

  2. #2

    Padrão Re: EdgeMax Load-Balance Https com problemas

    Cara, para ajudar melhor, abre a CLI dela e executa assim: show configuration

    A leitura por CLI é mais fácil e poderemos te ajudar melhor.

  3. #3

    Padrão

    Muito obrigado pela atenção!

    seguem as configurações


    Linux ubnt 3.10.107-UBNT #1 SMP Thu Apr 26 17:23:18 UTC 2018 mips64
    Welcome to EdgeOS
    ubnt@ubnt:~$ show configuration
    firewall {
    all-ping enable
    broadcast-ping disable
    group {
    network-group PRIVATE_NETS {
    network 192.168.0.0/16
    network 172.16.0.0/12
    network 10.0.0.0/8
    }
    }
    ipv6-receive-redirects disable
    ipv6-src-route disable
    ip-src-route disable
    log-martians disable
    modify balance {
    rule 10 {
    action modify
    description "do NOT load balance lan to lan"
    destination {
    group {
    network-group PRIVATE_NETS
    }
    }
    modify {
    table main
    }
    }
    rule 30 {
    action modify
    description "do NOT load balance destination public address"
    destination {
    group {
    address-group ADDRv4_eth1
    }
    }
    modify {
    table main
    }
    }
    rule 40 {
    action modify
    description "do NOT load balance destination public address"
    destination {
    group {
    address-group ADDRv4_eth2
    }
    }
    modify {
    table main
    }
    }
    rule 110 {
    action modify
    modify {
    lb-group G
    }
    }
    }
    name WAN_IN {
    default-action drop
    description "WAN to internal"
    rule 10 {
    action accept
    description "Allow established/related"
    state {
    established enable
    related enable
    }
    }
    rule 20 {
    action drop
    description "Drop invalid state"
    state {
    invalid enable
    }
    }
    }
    name WAN_LOCAL {
    default-action drop
    description "WAN to router"
    rule 10 {
    action accept
    description "Allow established/related"
    state {
    established enable
    related enable
    }
    }
    rule 20 {
    action drop
    description "Drop invalid state"
    state {
    invalid enable
    }
    }
    }
    receive-redirects disable
    send-redirects enable
    source-validation disable
    syn-cookies enable
    }
    interfaces {
    ethernet eth0 {
    address 192.168.0.1/24
    description Local
    duplex auto
    firewall {
    in {
    modify balance
    }
    }
    speed auto
    }
    ethernet eth1 {
    address dhcp
    description WAN
    duplex auto
    firewall {
    in {
    name WAN_IN
    }
    local {
    name WAN_LOCAL
    }
    }
    speed auto
    }
    ethernet eth2 {
    address dhcp
    description "WAN 2"
    duplex auto
    firewall {
    in {
    name WAN_IN
    }
    local {
    name WAN_LOCAL
    }
    }
    speed auto
    }
    ethernet eth3 {
    duplex auto
    speed auto
    }
    ethernet eth4 {
    duplex auto
    speed auto
    }
    ethernet eth5 {
    duplex auto
    speed auto
    }
    ethernet eth6 {
    duplex auto
    speed auto
    }
    ethernet eth7 {
    duplex auto
    speed auto
    }
    loopback lo {
    }
    }
    load-balance {
    group G {
    interface eth1 {
    route {
    default
    }
    weight 70
    }
    interface eth2 {
    weight 30
    }
    lb-local enable
    lb-local-metric-change disable
    }
    }
    port-forward {
    auto-firewall enable
    hairpin-nat enable
    lan-interface eth2
    rule 1 {
    description DVR
    forward-to {
    address 192.168.0.4
    port 37777
    }
    original-port 37777
    protocol tcp_udp
    }
    rule 2 {
    description DVR
    forward-to {
    address 192.168.0.4
    port 554
    }
    original-port 554
    protocol tcp_udp
    }
    rule 3 {
    description DVR
    forward-to {
    address 192.168.0.4
    port 10010
    }
    original-port 10010
    protocol tcp_udp
    }
    wan-interface eth1
    }
    service {
    dhcp-server {
    disabled false
    hostfile-update disable
    shared-network-name LAN {
    authoritative enable
    subnet 192.168.0.0/24 {
    default-router 192.168.0.1
    dns-server 192.168.0.1
    lease 86400
    start 192.168.0.38 {
    stop 192.168.0.243
    }
    static-mapping Compartilhado {
    ip-address 192.168.0.6
    mac-address 44:d9:e7:74:40:5a
    }
    static-mapping Corredor {
    ip-address 192.168.0.7
    mac-address 44:d9:e7:74:3f:66
    }
    static-mapping DVR {
    ip-address 192.168.0.4
    mac-address 58:10:8C:21:4A:1D
    }
    static-mapping Edicula {
    ip-address 192.168.0.5
    mac-address 44:d9:e7:46:e2:61
    }
    static-mapping Magikey121 {
    ip-address 192.168.0.20
    mac-address 2c:f7:f1:05:23:88
    }
    static-mapping Polvo1 {
    ip-address 192.168.0.83
    mac-address 00:24:be:7a:24:6d
    }
    static-mapping Switch-01 {
    ip-address 192.168.0.15
    mac-address 70:4F:57B:030
    }
    unifi-controller 192.168.0.83
    }
    }
    static-arp disable
    use-dnsmasq disable
    }
    dns {
    forwarding {
    cache-size 150
    listen-on eth0
    }
    }
    gui {
    http-port 80
    https-port 443
    older-ciphers enable
    }
    nat {
    rule 1 {
    description DVR1
    inbound-interface eth1
    inside-address {
    address 192.168.0.4
    port 37777
    }
    log disable
    protocol tcp_udp
    type destination
    }
    rule 2 {
    description DVR2
    inbound-interface eth1
    inside-address {
    address 192.168.0.4
    port 554
    }
    log disable
    protocol tcp_udp
    type destination
    }
    rule 3 {
    description DVR3
    inbound-interface eth1
    inside-address {
    address 192.168.0.4
    port 10010
    }
    log disable
    protocol tcp_udp
    type destination
    }
    rule 4 {
    description DVR-NET1
    inbound-interface eth2
    inside-address {
    address 192.168.0.4
    port 37777
    }
    log disable
    protocol tcp_udp
    type destination
    }
    rule 5 {
    description DVR-NET2
    inbound-interface eth2
    inside-address {
    address 192.168.0.4
    port 554
    }
    log disable
    protocol tcp_udp
    type destination
    }
    rule 6 {
    description DVR-NET3
    inbound-interface eth2
    inside-address {
    address 192.168.0.4
    port 10010
    }
    log disable
    protocol tcp_udp
    type destination
    }
    rule 5002 {
    description "masquerade for WAN"
    outbound-interface eth1
    type masquerade
    }
    rule 5004 {
    description "masquerade for WAN 2"
    outbound-interface eth2
    type masquerade
    }
    }
    ssh {
    port 22
    protocol-version v2
    }
    }
    system {
    conntrack {
    expect-table-size 4096
    hash-size 4096
    table-size 32768
    tcp {
    half-open-connections 512
    loose enable
    max-retrans 3
    }
    }
    host-name ubnt
    login {
    user ubnt {
    authentication {
    encrypted-password ****************
    }
    level admin
    }
    }
    ntp {
    server 0.ubnt.pool.ntp.org {
    }
    server 1.ubnt.pool.ntp.org {
    }
    server 2.ubnt.pool.ntp.org {
    }
    server 3.ubnt.pool.ntp.org {
    }
    }
    syslog {
    global {
    facility all {
    level notice
    }
    facility protocols {
    level debug
    }
    }
    }
    time-zone UTC
    }
    traffic-control {
    smart-queue Net240 {
    download {
    ecn enable
    flows 1024
    fq-quantum 1514
    limit 10240
    rate 240mbit
    }
    upload {
    ecn enable
    flows 1024
    fq-quantum 1514
    limit 10240
    rate 18mbit
    }
    wan-interface eth2
    }
    smart-queue Vivo300 {
    download {
    ecn enable
    flows 1024
    fq-quantum 1514
    limit 10240
    rate 300mbit
    }
    upload {
    ecn enable
    flows 1024
    fq-quantum 1514
    limit 10240
    rate 145mbit
    }
    wan-interface eth1
    }
    }
    ubnt@ubnt:~$

  4. #4

    Padrão Re: EdgeMax Load-Balance Https com problemas

    Você tem algumas opções para fazer isso...

    Uma primeira opção mais específica, se você tiver o endereço IP público do destino (/32) ou bloco (/X), é adicionar uma simples regra de roteamento estático (na tabela manipulada) apontando que todo o tráfego destinado para o IP X seja encaminhado através do gateway do link WAN desejado.

    Outra opção menos específica seria forçar o direcionamento de todo o tráfego HTTPS (443) através de um único link, por exemplo através das configurações descritas na discussão abaixo:

    https://community.ubnt.com/t5/EdgeRo...ic/td-p/703541
    Última edição por shbbrito; 15-11-2018 às 11:33.

  5. #5

    Padrão Re: EdgeMax Load-Balance Https com problemas

    Priorize como o colega falou o trafego https por uma operadora que ira resolver seu problema

  6. #6

    Padrão Re: EdgeMax Load-Balance Https com problemas

    Obrigado Shbbrito! Infelizmente eu não tenho apenas 1 endereço público de destino, meus clientes ficam acessando diversos sites com https, eu tenho que adotar a segunda opção, forçar o direcionamento de todo o tráfego HTTPS (443) através de um único link.

    Vou fazer um backup das configurações atuais e tentar subir essa configuração, vamos ver o que dá.

    depois eu posto aqui o resultado

    valeu!

  7. #7