NetworkManager + dnsmasq = subdomínios curinga para desenvolvimento

Estou desenvolvendo um aplicativo que usa vários subdomínios. Esses subdomínios são personalizáveis ​​pelo usuário, portanto, não posso especificá-los no arquivo my hosts.

Estou usando o NetworkManager para lidar com minhas conexões que podem usar dnsmasq para consultas de dns em cache, mas a instância pode ser configurada facilmente para fazer outras coisas: no meu caso, resolver * .app.dev para 127.0.0.1

Então, para o ponto desta postagem

  1. adicionar dns=dnsmasqlinha à [main]seção de/etc/NetworkManager/NetworkManager.conf
  2. crie um arquivo /etc/NetworkManager/dnsmasq.d/local-development.confcom o conteúdoaddress=/app.dev/127.0.0.1
  3. reinicie o gerenciador de rede (no meu sistema pode ser feito com sudo systemctl restart NetworkManager)

Você pode remover as linhas que /etc/hostsvocê usou para direcionar para seu aplicativo) no meu caso 127.0.0.1 app.dev sub1.app.dev subx.app.dev🙂

Espero que ajude você!

Nota: Se você não precisa trabalhar off-line, usar *.lvh.meé muito mais simples 🙂