Bem-vindo à Comunidade UBNT

Como impedir que o Dnsmasq use o dns da operadora?

Boa tarde, pessoal! Estou configurando um ER‑X‑SFP (Firmware EdgeRouter X SFP v2.0.8) com duas WANS (Algar em ETH1/WAN1 e Tim Live em ETH2/PPPoE2 como load-balance failover, apenas TIM em bridge).

Eu acreditava estar encaminhando as requisições DNS para 1.1.1.1 (Cloudflare) e 8.8.8.8 (Google). O problema é que a resolução de domínios inválidos está retornando um endereço para uma página da Algar/CTBC (http://nodomain.ctbc.com.br/) sobre pessoas desaparecidas - "OPS, O ENDEREÇO QUE VOCÊ PROCURA NÃO FOI ENCONTRADO. MAS A PATRICIA PODE SER".

Alguma sugestão do que está errado na minha configuração?
(Sou novo nesse tipo de setup, se virem alguma outra coisa estranha na minha configuração, por favor me avisem!)


$ show configuration

firewall {
    all-ping enable
    broadcast-ping disable
    group {
        address-group Trusted_IPs {
            description "External trusted ips"
        }
        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_pppoe2
                }
            }
            modify {
                table main
            }
        }
        rule 80 {
            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
            }
        }
        rule 21 {
            action accept
            description "L2TP/IPSec - IKE"
            destination {
                port 500
            }
            log disable
            protocol udp
        }
        rule 22 {
            action accept
            description "L2TP/IPSec - ESD"
            destination {
                port 4500
            }
            log disable
            protocol udp
        }
    }
    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
            }
        }
    }
    name WAN_OUT {
        default-action accept
        description "Internal to External"
    }
    options {
        mss-clamp {
            mss 1412
        }
    }
    receive-redirects disable
    send-redirects enable
    source-validation disable
    syn-cookies enable
}
interfaces {
    ethernet eth0 {
        duplex auto
        poe {
            output off
        }
        speed auto
    }
    ethernet eth1 {
        address dhcp
        description WAN_ETH1_ALGAR
        dhcp-options {
            default-route update
        }
        duplex auto
        firewall {
            in {
                name WAN_IN
            }
            local {
                name WAN_LOCAL
            }
            out {
                name WAN_OUT
            }
        }
        poe {
            output off
        }
        speed auto
    }
    ethernet eth2 {
        description WAN2_ETH2_TIM_PPPoE2
        dhcp-options {
        }
        duplex auto
        poe {
            output off
        }
        pppoe 2 {
            default-route auto
            firewall {
                in {
                    name WAN_IN
                }
                local {
                    name WAN_LOCAL
                }
                out {
                    name WAN_OUT
                }
            }
            mtu 1492
            name-server auto
            password [REMOVIDO]
            user-id [REMOVIDO]
        }
        speed auto
    }
    ethernet eth3 {
        description Disabled
        disable
        duplex auto
        poe {
            output off
        }
        speed auto
    }
    ethernet eth4 {
        description Management
        disable
        duplex auto
        poe {
            output off
        }
        speed auto
    }
    ethernet eth5 {
        duplex auto
        speed auto
    }
    loopback lo {
    }
    switch switch0 {
        address [REMOVIDO]/24
        description Local
        firewall {
            in {
                modify balance
            }
        }
        mtu 1500
        switch-port {
            interface eth0 {
            }
            interface eth3 {
            }
            interface eth4 {
            }
            interface eth5 {
            }
            vlan-aware disable
        }
    }
}
load-balance {
    group G {
        exclude-local-dns disable
        flush-on-active enable
        gateway-update-interval 10
        interface eth1 {
            route-test {
                count {
                    failure 3
                    success 3
                }
                initial-delay 60
                interval 5
                type {
                    ping {
                        target 1.1.1.1
                    }
                }
            }
        }
        interface pppoe2 {
            failover-only
            failover-priority 60
            route-test {
                count {
                    failure 3
                    success 3
                }
                initial-delay 60
                interval 5
                type {
                    ping {
                        target 1.1.1.1
                    }
                }
            }
        }
        lb-local enable
        lb-local-metric-change disable
    }
}
service {
    dns {
        dynamic {
            interface eth1 {
                service custom-cloudflare {
                    host-name [REMOVIDO]
                    login [REMOVIDO]
                    options zone=[REMOVIDO]
                    password [REMOVIDO]
                    protocol cloudflare
                }
                web dyndns
            }
            interface pppoe2 {
                service custom-cloudflare {
                    host-name [REMOVIDO]
                    login [REMOVIDO]
                    options zone=[REMOVIDO]
                    password [REMOVIDO]
                    protocol cloudflare
                }
            }
        }
        forwarding {
            cache-size 1000
            listen-on switch0
            options server=1.1.1.1@eth1
            options server=8.8.8.8@eth1
            options server=8.8.4.4@eth1
            options server=1.1.1.1@pppoe2
            options server=8.8.8.8@pppoe2
            options server=8.8.4.4@pppoe2
            system
        }
    }
    gui {
        cert-file /config/auth/server.pem
        http-port 80
        https-port 443
        listen-address [REMOVIDO]
        older-ciphers disable
    }
    nat {
        rule 1 {
            description "ALGAR - L2TP/IPSEC - ESP"
            destination {
                port 4500
            }
            inbound-interface eth1
            inside-address {
                address [REMOVIDO]
                port 4500
            }
            log disable
            protocol udp
            type destination
        }
        rule 2 {
            description "ALGAR - L2TP/IPSEC - IKE"
            destination {
                port 500
            }
            inbound-interface eth1
            inside-address {
                address [REMOVIDO]
                port 500
            }
            log disable
            protocol udp
            type destination
        }
        rule 4 {
            description "TIM - L2TP/IPSEC - IKE"
            destination {
                port 500
            }
            inbound-interface pppoe2
            inside-address {
                address [REMOVIDO]
                port 500
            }
            log disable
            protocol udp
            type destination
        }
        rule 5 {
            description "TIM - L2TP/IPSEC - ESP"
            destination {
                port 4500
            }
            inbound-interface pppoe2
            inside-address {
                address [REMOVIDO]
                port 4500
            }
            log disable
            protocol udp
            type destination
        }
        rule 5002 {
            description "masquerade for WAN"
            outbound-interface eth1
            type masquerade
        }
        rule 5004 {
            description "masquerade for WAN 2"
            outbound-interface pppoe2
            type masquerade
        }
    }
    ssh {
        port 22
        protocol-version v2
    }
    unms {
        connection wss://[REMOVIDO]
    }
}
system {
    conntrack {
        expect-table-size 4096
        hash-size 4096
        table-size 32768
        tcp {
            half-open-connections 512
            loose enable
            max-retrans 3
        }
    }
    domain-name [REMOVIDO]
    host-name [REMOVIDO]
    login {
        user [REMOVIDO] {
            authentication {
                encrypted-password [REMOVIDO]
                plaintext-password [REMOVIDO]
            }
            full-name [REMOVIDO]
            level admin
        }
    }
    name-server 1.1.1.1
    name-server 8.8.8.8
    name-server 8.8.4.4
    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 {
        }
    }
    static-host-mapping {
        host-name [REMOVIDO] {
            alias [REMOVIDO]
            inet [REMOVIDO]
        }
    }
    syslog {
        global {
            facility all {
                level notice
            }
            facility protocols {
                level debug
            }
        }
        host [REMOVIDO] {
            facility all {
                level debug
            }
        }
    }
    task-scheduler {
        task renew-letsencrypt {
            crontab-spec "04 01 * * 1"
            executable {
                path /config/scripts/letsencrypt-edgemax.sh
            }
        }
    }
    time-zone America/Sao_Paulo
    traffic-analysis {
        dpi enable
        export enable
    }
}
traffic-control {
    advanced-queue {
        root {
            queue 1023 {
                attach-to global
                bandwidth 1000mbit
                description UBNT-BQ
            }
        }
    }
}


Traceroute 1.1.1.1 e 8.8.8.8
traceroute 1.1.1.1
traceroute to 1.1.1.1 (1.1.1.1), 64 hops max, 52 byte packets
 1  [EDGEMax] ([REMOVIDO])  1.184 ms  0.440 ms  0.302 ms
 2  192.168.100.1 (192.168.100.1)  0.893 ms  1.004 ms  0.771 ms
 3  lo0-0.bng-b-mx480.ula001.ctbc.com.br (200.225.199.191)  9.882 ms  9.542 ms  9.422 ms
 4  et-6-0-0-0.ptx-b.ula001.algartelecom.com.br (168.197.20.177)  22.592 ms  22.905 ms  23.233 ms
 5  ae1-0.ptx-b.spo511.algartelecom.com.br (170.84.32.10)  28.895 ms  28.238 ms  36.509 ms
 6  et-3-0-0-0.border-b.spo511.algartelecom.com.br (170.84.34.73)  31.165 ms  28.488 ms  31.791 ms
 7  as13335.saopaulo.sp.ix.br (187.16.219.111)  23.990 ms  23.665 ms  23.573 ms
 8  one.one.one.one (1.1.1.1)  23.735 ms  23.326 ms  23.242 ms

traceroute 8.8.8.8
traceroute to 8.8.8.8 (8.8.8.8), 64 hops max, 52 byte packets
 1  [EDGEMax] ([REMOVIDO])  0.898 ms  0.303 ms  0.245 ms
 2  192.168.100.1 (192.168.100.1)  1.022 ms  0.740 ms  0.708 ms
 3  lo0-0.bng-b-mx480.ula001.ctbc.com.br (200.225.199.191)  9.682 ms  9.934 ms  9.363 ms
 4  et-12-0-1-0.ptx-a.ula001.algartelecom.com.br (168.197.20.153)  16.301 ms  17.563 ms  16.735 ms
 5  et-14-0-1-0.ptx-a.spo511.algartelecom.com.br (170.84.35.29)  28.410 ms  29.153 ms  28.655 ms
 6  ae0-0.ptx-a.bre-511.algartelecom.com.br (170.84.33.153)  29.842 ms  81.881 ms  29.313 ms
 7  * * *
 8  72.14.197.232 (72.14.197.232)  24.208 ms  25.155 ms  35.590 ms
 9  108.170.245.161 (108.170.245.161)  24.486 ms
    74.125.243.65 (74.125.243.65)  24.742 ms
    108.170.245.129 (108.170.245.129)  22.976 ms
10  209.85.255.15 (209.85.255.15)  23.786 ms
    172.253.66.21 (172.253.66.21)  23.831 ms  23.632 ms
11  dns.google (8.8.8.8)  23.189 ms  23.049 ms  23.039 ms


Dig
(EDGEMax)
dig @[EDGEMax IP] alskdjaldkjaldkajdlkajsd.com  # <!- Domínio totalmente inválido

; <<>> DiG 9.10.6 <<>> @[EDGEMax IP] alskdjaldkjaldkajdlkajsd.com
; (1 server found) ;; global options: +cmd ;; Got answer: ;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 40200 ;; flags: qr rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 1 ;; OPT PSEUDOSECTION: ; EDNS: version: 0, flags:; udp: 512 ;; QUESTION SECTION: ;alskdjaldkjaldkajdlkajsd.com. IN A ;; ANSWER SECTION: alskdjaldkjaldkajdlkajsd.com. 5 IN A 92.242.140.6 <!-- Resposta "mentirosa" ;; Query time: 79 msec ;; SERVER: [EDGEMax IP]#53([EDGEMax IP])
;; WHEN: Tue Dec 10 16:25:48 -03 2019 ;; MSG SIZE rcvd: 73 (Cloudflare) dig @1.1.1.1 alskdjaldkjaldkajdlkajsd.com ; <<>> DiG 9.10.6 <<>> @1.1.1.1 alskdjaldkjaldkajdlkajsd.com ; (1 server found) ;; global options: +cmd ;; Got answer: ;; ->>HEADER<<- opcode: QUERY, status: NXDOMAIN, id: 5804 ;; flags: qr rd ra; QUERY: 1, ANSWER: 0, AUTHORITY: 1, ADDITIONAL: 1 ;; OPT PSEUDOSECTION: ; EDNS: version: 0, flags:; udp: 1452 ;; QUESTION SECTION: ;alskdjaldkjaldkajdlkajsd.com. IN A ;; AUTHORITY SECTION: com. 900 IN SOA a.gtld-servers.net. nstld.verisign-grs.com. 1576005941 1800 900 604800 86400 ;; Query time: 1000 msec ;; SERVER: 1.1.1.1#53(1.1.1.1) ;; WHEN: Tue Dec 10 16:26:12 -03 2019 ;; MSG SIZE rcvd: 133 (Google) dig @8.8.8.8 alskdjaldkjaldkajdlkajsd.com ; <<>> DiG 9.10.6 <<>> @8.8.8.8 alskdjaldkjaldkajdlkajsd.com ; (1 server found) ;; global options: +cmd ;; Got answer: ;; ->>HEADER<<- opcode: QUERY, status: NXDOMAIN, id: 62598 ;; flags: qr rd ra; QUERY: 1, ANSWER: 0, AUTHORITY: 1, ADDITIONAL: 1 ;; OPT PSEUDOSECTION: ; EDNS: version: 0, flags:; udp: 512 ;; QUESTION SECTION: ;alskdjaldkjaldkajdlkajsd.com. IN A ;; AUTHORITY SECTION: com. 899 IN SOA a.gtld-servers.net. nstld.verisign-grs.com. 1576005956 1800 900 604800 86400 ;; Query time: 809 msec ;; SERVER: 8.8.8.8#53(8.8.8.8) ;; WHEN: Tue Dec 10 16:26:24 -03 2019 ;; MSG SIZE rcvd: 130

`




Rotulado:

Comentários

  • R4V3RR4V3R 8499 Pontos
    Por favor, execute o seguinte comando no roteador e retorne aqui o resultado..
    show dns forwarding nameservers

  • vfsiovfsio 0 Pontos
    R4V3R disse:
    Por favor, execute o seguinte comando no roteador e retorne aqui o resultado..
    show dns forwarding nameservers


    $ show dns forwarding nameservers
    -----------------------------------------------
       Nameservers configured for DNS forwarding
    -----------------------------------------------
    1.1.1.1 available via 'optionally configured'
    8.8.8.8 available via 'optionally configured'
    8.8.4.4 available via 'optionally configured'
    1.1.1.1@eth1 available via 'optionally configured'
    8.8.8.8@eth1 available via 'optionally configured'
    8.8.4.4@eth1 available via 'optionally configured'
    1.1.1.1@pppoe2 available via 'optionally configured'
    8.8.8.8@pppoe2 available via 'optionally configured'
    8.8.4.4@pppoe2 available via 'optionally configured'
    
    -----------------------------------------------
     Nameservers NOT configured for DNS forwarding
    -----------------------------------------------
    [IP_EXTERNO_ALGAR] available via 'ppp pppoe2'  <!-- IP Externo do link da Algar (embora PPPoE2 seja o link da tim)
    208.67.222.222 available via 'ppp pppoe2'      <!-- Resolver do OpenDNS, indesejado.
    192.168.100.1 available via 'dhcp eth1'        <!-- IP do roteador da Algar




  • R4V3RR4V3R 8499 Pontos
    editado dezembro 2019
    Bom, eu não sei ao certo de onde vieram tantos servidores DNS e principalmente repetidos assim em sua configuração, nem essa informação de "optionally configured", que aqui no meu roteador aparece apenas como 'system', mas vamos lá.
    O que você tem que fazer é negar o recebimento de servidores DNS via DHCP(ou PPPoE) de seus provedores...
    Isso é feito adicionando-se uma opção DHCP dentro da configuração da interface WAN em questão(todas elas no caso). A opção seria essa...

     dhcp-options {
             name-server no-update
         }

    Já se for uma interface do tipo PPPoE, aí a confiuração é feita dentro da própria interface, assim:

    pppoe 0 {
             name-server none
         }

    Feito isso, você especifica manualmente os servidores DNS que quer utilizar, que por sua vez precisam estar acessíveis através de ambas as conexões de internet disponíveis em seu(ou seus) grupos de balanceamento. Isso é feito da seguinte forma:

    set system name-server 1.1.1.1
    set system name-server 1.0.0.1
    set system name-server 8.8.8.8
    set system name-server 8.8.4.4Pra configurar estes servidores DNS especificamente, e nesta sequencia para serem utilizados como resolvers pelo roteador em si, e também pelo seu cache DNS(dnsmasq), caso esteja habilitado e em uso. É isso. ;)

    Feito isso, a saída do comando que solicitei anteriormente deveria ser esta:

    -----------------------------------------------
       Nameservers configured for DNS forwarding
    -----------------------------------------------
    1.1.1.1 available via 'system'
    1.0.0.1 available via 'system'
    8.8.8.8 available via 'system'
    8.8.4.4 available via 'system'

  • vfsiovfsio 0 Pontos
    Obrigado pela ajuda, isso resolveu o problema do DNS Forward, mas quebra meu updater de DNS Dinâmico.

    set interfaces ethernet eth1 dhcp-options name-server no-update
    set interfaces ethernet eth2 pppoe 2 name-server none
    
    set system name-server 1.1.1.1
    set system name-server 1.0.0.1
    set system name-server 8.8.8.8
    set system name-server 8.8.4.4
    $ show dns forwarding nameservers
    -----------------------------------------------
       Nameservers configured for DNS forwarding
    -----------------------------------------------
    1.1.1.1 available via 'optionally configured'  <!-- Esse 'optionally configured' vem de onde?
    8.8.8.8 available via 'optionally configured'
    8.8.4.4 available via 'optionally configured'
    1.0.0.1 available via 'optionally configured'
    1.1.1.1@eth1 available via 'optionally configured'
    8.8.8.8@eth1 available via 'optionally configured'
    8.8.4.4@eth1 available via 'optionally configured'
    1.1.1.1@pppoe2 available via 'optionally configured'
    8.8.8.8@pppoe2 available via 'optionally configured'
    8.8.4.4@pppoe2 available via 'optionally configured'
    
    -----------------------------------------------
     Nameservers NOT configured for DNS forwarding
    -----------------------------------------------
    [IP_EXTERNO_ALGAR] available via 'system'
    208.67.222.222 available via 'system' 



    DNS Dinâmico para de atualizar (inclusive acusa erro de conexão):
    $ update dns dynamic interface eth1
    $ update dns dynamic interface pppoe2
    
    
    $ show dns dynamic status
    interface    : eth1
    host-name    : algar.[REMOVIDO]
    last update  : Wed Dec 31 21:00:00 1969
    update-status: noconnect                       <!-- ERRO
    
    interface    : pppoe2
    host-name    : tim.REMOVIDO
    last update  : Wed Dec 31 21:00:00 1969
    update-status: noconnect                       <!-- ERRO

    Voltando para a configuração antiga, ddns volta a atualizar como esperado:
    delete interfaces ethernet eth1 dhcp-options name-server
    set interfaces ethernet eth2 pppoe 2 name-server auto
    
    
    update dns dynamic interface pppoe2
    update dns dynamic interface eth1
    
    
    show dns dynamic status
    interface    : eth1
    ip address   : [REMOVIDO]
    host-name    : algar[REMOVIDO]
    last update  : Tue Dec 10 19:34:04 2019
    update-status: good                             <!-- VOLTA A FUNCIONAR
    
    interface    : pppoe2
    ip address   : [REMOVIDO]
    host-name    : tim[REMOVIDO]
    last update  : Tue Dec 10 19:36:20 2019
    update-status: good                            <!-- VOLTA A FUNCIONAR

    E agora, sugestões?

  • R4V3RR4V3R 8499 Pontos
    Bom, eu utilizo as configurações que descrevi acima(exatamente) e não tenho problema algum com DNS dinâmico.. tbm uso dezenas de hosts dinâmicos em em múltiplos clientes diferentes com tudo quanto é tipo de conexão... cerca de 40 ER-X, zero problemas como o que você descreve...
    Única coisa que posso recomendar então é que você faça downgrade dessa plataforma pra 1.10.10, já que a 2.x não  é(nem nunca foi) 100% estável nesse modelo de roteador de qualquer forma... 2.x é pra linha cavium apenas... os modelos X devem permanecer na 1.10.x, preferencialmente...
  • vfsiovfsio 0 Pontos
    R4V3R disse:
    Bom, eu utilizo as configurações que descrevi acima(exatamente) e não tenho problema algum com DNS dinâmico.. tbm uso dezenas de hosts dinâmicos em em múltiplos clientes diferentes com tudo quanto é tipo de conexão... cerca de 40 ER-X, zero problemas como o que você descreve...
    Única coisa que posso recomendar então é que você faça downgrade dessa plataforma pra 1.10.10, já que a 2.x não  é(nem nunca foi) 100% estável nesse modelo de roteador de qualquer forma... 2.x é pra linha cavium apenas... os modelos X devem permanecer na 1.10.x, preferencialmente...
    Chegou a conseguir usar o Cloudflare para DDNS com autenticação via API Token (ao invés de usar a chave de API Global)?
  • R4V3RR4V3R 8499 Pontos
    Não.. eu uso dyndns e no-ip, ambos em suas versões pagas..
    De qualquer forma, tem tutorial pro ddns do cloudflare na base de conhecimentos, não vejo porque não funcionaria..
    https://help.ubnt.com/hc/en-us/articles/204976324-EdgeRouter-Custom-Dynamic-DNS
  • vfsiovfsio 0 Pontos
    R4V3R disse:
    Não.. eu uso dyndns e no-ip, ambos em suas versões pagas..
    De qualquer forma, tem tutorial pro ddns do cloudflare na base de conhecimentos, não vejo porque não funcionaria..
    https://help.ubnt.com/hc/en-us/articles/204976324-EdgeRouter-Custom-Dynamic-DNS

    Então, fiquei um tempão quebrando a cabeça com esse tutorial, pra mim não autenticava quando eu usava uma chave de API específica (com privilegios apenas para dar update na zona apropriada) para autenticar, apenas quando user a chave de API global (que tem permissões pra alterar quase qualquer configuração da conta) que eu consegui fazer funcionar.

    Enfim, obrigado pela ajuda!
Entre ou Registre-se para fazer um comentário.