Duas maneiras de usar o FastDDNS no pfSense
Seu painel de hostname oferece duas configurações. Método 2 adiciona o FastDDNS ao cliente Services > Dynamic DNS integrado como provedor Custom — esta é a opção recomendada, porque o pfSense a armazena na configuração e a inclui no backup. Método 1 cola um script de uma linha no shell, que instala uma tarefa do cron executada a cada dois minutos. Funciona imediatamente, mas o pfSense não gerencia essa tarefa.
A numeração abaixo segue os rótulos do seu painel, não a ordem que recomendamos. Configure o Método 2 para uso permanente; use o Método 1 quando quiser enviar uma atualização imediatamente, sem passar por um formulário.
| Método 2 — cliente DDNS integrado | Método 1 — script crontab | |
|---|---|---|
| Onde você trabalha | Services > Dynamic DNS na interface web | Diagnostics > Command Prompt, ou SSH |
| Mantido na configuração do pfSense | Sim | Não — veja o limite abaixo |
| Sobrevive a uma restauração da configuração ou reinstalação | Sim | Não |
| Quando envia uma atualização | Quando o endereço da interface monitorada muda, além de uma verificação diária | A cada 2 minutos, independentemente de mudanças |
| Esforço de configuração | Sete campos, quatro deles copiados do painel | Uma única colagem |
| Ideal para | A configuração permanente | Uma primeira atualização imediata ou um teste rápido |
Antes de começar
Quatro coisas, e duas delas determinam se o acesso remoto funcionará de fato.
- Um hostname FastDDNS. Crie um gratuitamente em FastDDNS, depois abra-o e role até DDNS Configuration Parameters > Firewall pfSense.
- Acesso de administrador à interface web do pfSense, e acesso ao shell somente se você planeja usar o Método 1.
- Um IP público real na interface WAN. Se o seu provedor de internet coloca você atrás de NAT de operadora (Carrier-Grade NAT), o DNS dinâmico não ajuda — o hostname apontaria para um endereço que ninguém fora da rede do provedor consegue alcançar. Verifique o endereço WAN no painel do pfSense ou execute o Verificador de CGNAT no aplicativo FastDDNS para celular.
- Regras de firewall e NAT para o que você quiser acessar. O DDNS apenas mantém o nome apontando para o endereço correto; a forma de acesso continua sendo sua responsabilidade. Confirme depois com Verificação de Portas.
No painel do pfSense, um endereço em 10.0.0.0/8, 172.16.0.0/12, 192.168.0.0/16 ou 100.64.0.0/10 na interface WAN significa que algo a montante está fazendo o NAT. A faixa 100.64.0.0/10 é a reservada para NAT de operadora.
Método 2 — adicionar o FastDDNS como um cliente de DNS dinâmico personalizado
Esta é a configuração que vale a pena manter. O pfSense a armazena em config.xml, então ela volta com uma restauração de configuração e sobrevive a uma reinstalação.
Passo 1 — copie a URL de atualização do painel do seu hostname
Abra seu hostname, role até DDNS Configuration Parameters e expanda Firewall pfSense. Tudo o que você precisa para ambos os métodos está nesse painel:

Copie Update URL sob Method 2. Ela já contém seu hostname e suas credenciais:
https://client.fastddns.net/?hostname=myhome.fastddns.net&user_name=YOUR-USERNAME&user_pass=YOUR-UPDATE-PASSWORDOs três valores em maiúsculas representam as informações privadas da sua conta — o painel os preenche para você.
Passo 2 — abrir o cliente Dynamic DNS
Na interface web do pfSense, vá para Services > Dynamic DNS e clique em + Add.
Passo 3 — preencher os campos
| Campo | Valor | Por quê |
|---|---|---|
| Service Type | Custom |
FastDDNS não está na lista de provedores integrados, e não precisa estar |
| Interface to Monitor | WAN |
A interface cuja alteração de endereço deve acionar uma atualização |
| Hostname | seu hostname do FastDDNS | A URL de atualização já o contém, então, para o tipo Custom, este é principalmente o rótulo que você verá na lista |
| Update URL | a URL do Passo 1 | Cole-a inteira. Não há um IP%IP% para substituir — o FastDDNS registra o endereço de onde a solicitação chega |
| Force IPv4 DNS Resolution | marcado | Resolve o host de atualização apenas via IPv4, portanto o endereço registrado pelo FastDDNS é o endereço WAN IPv4, e não um IPv6 |
| Result Match | deixe vazio | O pfSense compara isso com a resposta inteira. O FastDDNS responde good após uma alteração e nochg quando nada mudou, portanto nenhuma string fixa única corresponde às duas situações — as instruções do próprio painel não definem uma |
| Description | FastDDNS.net |
Texto livre, para sua própria referência |

Passo 4 — salvar e ler a coluna de status
Clique em Save & Force Update. De volta à lista Services > Dynamic DNS, na lista, a Cached IP coluna deve ser preenchida com o seu endereço WAN atual. Uma entrada vazia, ou uma que permaneça desatualizada após uma atualização forçada, significa que a atualização não foi realizada — a tabela de solução de problemas abaixo explica o motivo.
Algo importante a entender sobre este método: ele é acionado por eventos, não por um intervalo de dois minutos. A Netgate documenta o serviço como atualizando quando o endereço de uma interface muda, e o pfSense também inclui uma entrada de cron padrão que roda /etc/rc.dyndns.update uma vez por dia às 01:01 como uma rede de segurança. Portanto, uma atualização que falha é tentada novamente — apenas não dentro de alguns minutos. Quando você precisa de uma imediatamente, use Save & Force Update.
Se você preferir acessar o mesmo endpoint a partir do seu próprio script, os parâmetros estão documentados no página da API do cliente FastDDNS.
O passo a passo abaixo é uma gravação mais antiga, então o painel parece diferente das capturas de tela aqui. Os campos e a ordem das etapas são os mesmos.
Método 1 — o script de crontab de uma linha
Passo 1 — copie o script do seu painel de hostname
No mesmo painel de Firewall pfSense, copie a caixa abaixo de Method 1. É uma linha construída em torno da mesma URL de atualização:
((crontab -l >/dev/null && crontab -l | grep -i "client.fastddns.net") || ((crontab -l; echo '*/2 * * * * fetch "URL" -o /dev/null || curl -s "URL"') | crontab -; fetch "URL" -o /dev/null || curl -s "URL"; printf "\n\nAdded Dynamic DNS Script to crontab successfully\n\n"; exit 1;)) && printf "\n\nFastDDNS is available \n\n";Na linha real, cada URL acima é a sua URL completa de atualização do Passo 1 do Método 2. Copie-a do painel em vez de montá-la manualmente.

Passo 2 — execute-o
Cole a linha em Diagnostics > Command Prompt, no campo Execute Shell Command e pressione Execute. Uma sessão SSH ou a opção 8 no console funciona da mesma forma.
O próprio aviso da Netgate se aplica a esta página em geral: ela executa qualquer coisa que você cole com privilégios totais, e um comando ruim pode deixar o firewall inutilizável. Cole a linha do seu painel, nada mais. O comando também precisa terminar e retornar — este termina, por isso é seguro executá-lo aqui.
Passo 3 — o que as duas mensagens significam
Procure uma destas duas linhas no final da saída. Elas significam coisas diferentes:
| Mensagem | O que aconteceu |
|---|---|
| Added Dynamic DNS Script to crontab successfully | Não havia uma entrada do FastDDNS no crontab, então uma foi adicionada e uma atualização foi enviada imediatamente |
| FastDDNS is available | Já havia uma entrada, então nada foi alterado |
A verificação consiste em um simples comando grepgrep que procura por FastDDNSclient.fastddns.net em todo o crontab. Isso evita que você instale a tarefa duas vezes — mas também significa que, se você adicionar um segundo hostname no mesmo firewall, o script encontrará o primeiro e se recusará a adicionar qualquer coisa. A linha de cron do segundo hostname precisa ser adicionada manualmente.
Essa grep verificação também explica por que a segunda execução imprime mais do que uma linha: uma correspondência é exibida, e a linha correspondente é a entrada do cron, que contém sua URL de atualização completa — incluindo nome de usuário e senha. Se você estiver executando isso com alguém olhando por cima do seu ombro ou colando a saída em um ticket, essa é a linha que deve ser removida.
A própria linha agendada executa fetch, o downloader do FreeBSD fornecido pelo pfSense, e usa curl como alternativa se isso falhar.
Passo 4 — o limite que vale a pena conhecer antes de confiar nele
O pfSense mantém suas próprias tarefas agendadas em config.xml e reconstrói o crontab do sistema a partir dali. Uma tarefa adicionada com crontab - fica no crontab do usuário root, que o pfSense não gerencia e não inclui em um backup da configuração. Há duas consequências:
- Se você restaurar uma configuração ou reinstalar o firewall, a tarefa não estará mais lá — o cliente Dynamic DNS do Método 2 estaria.
- Se System > Advanced > Miscellaneous o pfSense tiver discos RAM ativados para
/tmpe/var, o crontab do root ficará na RAM. A Netgate documenta que, após uma reinicialização, apenas os dados RRD, os leases do DHCP, os logs e os dados do Captive Portal são preservados nesses discos RAM — um crontab não está nessa lista.
Nada disso torna o Método 1 errado. Ele é uma boa maneira de fazer a atualização agora, mas uma maneira ruim de deixar tudo funcionando por um ano. Se você quiser uma tarefa cron que o pfSense realmente mantenha, instale o pacote Cron e adicione a mesma linha por meio dele.
Outra gravação antiga, mostrando o caminho do script no design anterior do painel.
Verifique se o hostname está realmente sendo atualizado
Independentemente do método usado, confirme o funcionamento por três ângulos.
No pfSense, Services > Dynamic DNS mostra um Cached IP para cada entrada — ele deve corresponder ao seu endereço WAN. Se você usou o Método 1, confirme que o job existe e execute-o uma vez manualmente pelo shell:
crontab -l
fetch -o - "PASTE-YOUR-UPDATE-URL-HERE"Esse segundo comando imprime a resposta do servidor. Ela deve começar com good se o endereço acabou de ser alterado, ou nochg se já estava correto — o FastDDNS pode acrescentar o endereço que registrou. badauth é a única resposta que identifica precisamente o problema: o nome de usuário ou a senha de atualização está incorreto. Qualquer outra resposta, ou a ausência de resposta, não é autoexplicativa — leia o que realmente foi retornado e depois verifique o log do sistema.
De fora da rede, resolva o hostname e compare-o com seu endereço público:
nslookup myhome.fastddns.netPor fim, o painel do seu hostname mostra um registro de data e hora de Last Updated que muda Not yet updated na primeira vez que o firewall se comunica. O FastDDNS aplica um novo endereço em menos de 60 segundos, embora um cache DNS local possa manter o antigo por um pouco mais de tempo.
Solução de problemas de DDNS no pfSense
| O que você vê | Por quê | O que fazer |
|---|---|---|
A resposta é badauth |
Nome de usuário ou senha de atualização incorretos na URL | Copie a Update URL do painel novamente; se você veio de outro provedor, consulte o guia sobre substituir um endereço de servidor No-IP ou DynDNS |
| Cached IP fica vazio após o salvamento | O cliente não conseguiu alcançar o host de atualização ou a URL foi truncada ao colar | Use Save & Force Update, depois leia Status > System Logs > System > General; ativar Verbose Logging na entrada mostra toda a comunicação |
| O hostname é resolvido para um endereço IPv6 | O host de atualização foi acessado por IPv6, então esse é o endereço que foi registrado | Marque Force IPv4 DNS Resolution na entrada do DNS Dinâmico e force uma atualização |
| Cada atualização é registrada como falha, embora o hostname esteja correto | Result Match está definido como uma string fixa, e a resposta alterna entre good e nochg |
Limpe o campo Result Match para desativar a verificação do resultado |
| O Método 1 funcionou, mas parou após uma reinicialização ou restauração da configuração | O trabalho do cron fica fora de config.xml, e pode ficar em um disco RAM |
Configure o Método 2 em vez disso ou adicione a linha pelo pacote Cron |
| O nome do host é resolvido, mas nada responde na sua porta | O hostname é resolvido, mas nada responde na sua port | O DDNS está funcionando; o caminho até a rede é que nãoVerificação de Porta |
| Adicione as regras de NAT e firewall e teste de fora da rede com | O hostname é resolvido para um endereço que não é o seu IP público | O firewall está atrás de outra camada de NAT, geralmente CGNAT |
| Compare o endereço WAN no painel com o informado por uma consulta de IP público; se forem diferentes, peça ao seu ISP um IP público | Um hostname gratuito é renovado uma vez por ano, e um temporário dura 30 dias | Renove-o na sua conta, ou mude para um plano cujos hostnames não expiram |
Mantenha sua URL de atualização privada
A URL de atualização contém seu hostname, nome de usuário e senha de atualização como parâmetros de consulta em texto simples. Ela é armazenada dessa forma na configuração do pfSense e, com o Método 1, no crontab — qualquer pessoa que consiga ler um backup da configuração pode ler essas credenciais. Trate uma exportação da configuração do pfSense como trataria um arquivo de senhas e nunca cole uma URL de atualização sem ocultar os dados em um fórum ou ticket de suporte. Se já fez isso, altere a senha de atualização na sua conta e reconfigure a entrada.
Perguntas frequentes
Devo usar o cliente Dynamic DNS ou o script cron?
Use o cliente Dynamic DNS em Services > Dynamic DNS para qualquer configuração que pretenda manter. O pfSense o armazena na configuração, então ele faz parte de um backup e volta após uma reinstalação. O script cron é a maneira mais rápida de fazer uma primeira atualização, mas o pfSense não gerencia esse trabalho, que pode ser perdido após uma reinicialização ou restauração da configuração.
Preciso abrir uma port para a própria atualização do DDNS?
Não. O pfSense abre uma conexão HTTPS de saída com o FastDDNS, portanto nenhuma regra de entrada é necessária para a atualização. Você ainda precisa de port forwarding e regras de firewall para os serviços que deseja acessar pelo hostname, como a port 554 para RTSP ou a port web de uma câmera.
Por que o painel pede para forçar a resolução IPv4?
Porque o FastDDNS registra o endereço de onde sua solicitação chega. Se o pfSense resolver o host de atualização para um endereço IPv6 e se conectar por IPv6, esse será o endereço registrado, e seu A record ficará incorreto ou vazio. Forçar a resolução IPv4 mantém a atualização no mesmo protocolo do endereço que você deseja publicar.
Isso funcionará se meu ISP usar CGNAT?
Não. Atrás de um NAT de nível de operadora, seu firewall não tem um IP público próprio. Portanto, não há um endereço para o qual um hostname possa apontar de forma útil, e as conexões de entrada são bloqueadas pelo ISP. O DNS dinâmico resolve endereços que mudam, não a ausência de um endereço público. Peça ao seu ISP um endereço IP público ou use um serviço que faça tunelamento de saída.
Está executando outra coisa na borda? O mesmo URL de atualização funciona em qualquer lugar que possa fazer uma solicitação HTTPS programada, incluindo a configuração MikroTik RouterOS.





