Índice das dicas

Entendendo o NetworkManager

Por Carlos E. Morimoto em 18 de fevereiro de 2009 às 19h10

27

O Ubuntu gerencia as interfaces de rede usando o NetworkManager, um utilitário de configuração de rede de "nova geração", que utiliza as informações coletadas pelo HAL para detectar as interfaces que estão disponíveis, oferecendo um menu de opções que permite que você se conecte a redes wireless e alterne entre as redes disponíveis de maneira bastante prática.

Ao ativar o transmissor da rede wireless, ele detecta as redes disponíveis e mostra a lista através do applet ao lado do relógio. Ao se conectar a uma rede protegida, ele se oferece para salvar a passphrase e guarda a configuração, passando a se conectar à rede automaticamente quando ela estiver disponível:

img_html_m676a30d9

Ao plugar um cabo de rede, ele chaveia automaticamente da rede wireless para a rede cabeada, obtendo a configuração via DHCP. Desconectando o cabo de rede, ele volta a tentar se conectar a uma das redes wireless disponíveis, e assim por diante.

Por default, ele tenta configurar todas as conexões via DHCP (e desativa a conexão caso o DHCP não esteja disponível, ou o servidor esteja forma do ar), mas você pode também configurar os endereços manualmente acessando as propriedades da interface, clicando com o botão direito sobre o applet e acessando o "Editar conexões":

img_html_m4bcffa79

A partir do Ubuntu 8.10 ele oferece suporte até mesmo a alguns modems 3G, modems ADSL configurados em modo bridge (conexão via PPPoE) e até mesmo a conexão com VPNs, oferecendo uma solução de conectividade bastante completa.

Embora tenha sido criticado em suas primeiras versões, devido a problemas diversos, o NetworkManager cresceu e se tornou uma solução bastante estável a partir do Ubuntu 8.10.

De qualquer forma, o uso do NetworkManager não impede que você configure a rede manualmente caso desejado; para isso, basta adicionar a configuração da rede no arquivo "/etc/network/interfaces". O NetworkManager monitora a configuração do arquivo e deixa de monitorar interfaces manualmente especificadas nele.

Por padrão, o arquivo inclui referência apenas à interface de loopback, permitindo que o NetworkManager monitore as demais interfaces:

auto lo
iface lo inet loopback

Ao adicionar uma configuração manual de rede dentro do arquivo, o sistema passa a usar a configuração especificada, desativando o uso do NetworkManager. Esta é uma boa solução se você usa um desktop conectado a uma rede cabeada e não tem necessidade de ficar alternando entre redes. Um exemplo de configuração seria:

auto lo eth0
iface lo inet loopback

iface eth0 inet static
address 192.168.1.23
netmask 255.255.255.0
network 192.168.1.0
broadcast 192.168.1.255
gateway 192.168.1.1

Se você estiver usando uma placa wireless, a configuração manual é feita em dois passos. O primeiro é gerar o arquivo de configuração do ndiswrapper, usando o wpa_passphrase, especificando o nome da rede (ex: rede) e a passphrase de acesso (ex: 123456), como em:

# wpa_passphrase rede 123456 > /etc/wpa_supplicant.conf

Assim como em outros comandos que escrevem diretamente em arquivos, ele precisa ser executado diretamente como root, não com o sudo.

Com o arquivo de configuração gerado, falta apenas a configuração no arquivo "/etc/network/interfaces". A configuração é a mesma que a usamos para placas cabeadas, com a adição de duas novas linhas, que ativam o uso do wpa_supplicant e indicam o arquivo de configuração que será usado, como em:

auto lo wlan0
iface lo inet loopback
iface wlan0 inet static
address 192.168.1.23
netmask 255.255.255.0
network 192.168.1.0
broadcast 192.168.1.255
gateway 192.168.1.1
wpa-driver wext
wpa-conf /etc/wpa_supplicant.conf

Edite também o arquivo "/etc/resolv.conf", adicionando os endereços dos servidores DNS (um por linha), como em:

nameserver 208.67.222.222
nameserver 208.67.220.220

Se mudar de idéia, basta desfazer as alterações e o NetworkManager voltará a gerenciar as interfaces.

O NetworkManager roda como um serviço de sistema, e não como um aplicativo. É por isso que você não consegue desabilitá-lo diretamente através do ambiente gráfico. O ícone que aparece ao lado do relógio é na verdade uma instância do "nm-applet", um pequeno utilitário destinado apenas a mostrar as redes disponíveis e permitir que você altere a configuração.

Para desativá-lo, é necessário parar diretamente o serviço, usando o comando "/etc/init.d/NetworkManager stop" (para o serviço temporariamente) ou "update-rc.d NetworkManager remove" (desativa em definitivo, fazendo com que ele deixe se ser carregado durante o boot). Entretanto, isso é desnecessário na maior parte dos casos, uma vez que você pode desativá-lo simplesmente especificando a configuração de rede no "/etc/network/interfaces".

Em versões antigas do Ubuntu, o comando para desativar o NetworkManager era o "/etc/dbus-1/event.d/25NetworkManager stop". Neles, a interface de configuração manual era também bem diferente e as opções para configurar conexões ADSL, modems 3G e VPNs ainda não estavam disponíveis.

27 comentáriosPor Carlos E. Morimoto. Revisado 23 de março de 2011 às 11h18

Comentários

networks em conexão
por Fátima Friaça (anônimo) em 8 de dezembro de 2011 às 17h19
a rede via rádio tem demorado p/entrar em conexão geral,uso em meu pc uma internete via rádio,acho muito lenta e dificil demais para trabalhar,qual seria melhor?mande uma resposta sobre isso?
KNetworkManager sumiu o ícone
por Cláudio Henrique da Costa Pereira (anônimo) em 7 de dezembro de 2011 às 14h13
Estou usando uma distribuição desenvolvida pelo MEC, Linux Educacional 3.0, e estou com o seguinte problema: o ícone do KNetworkManager sumiu da barra de tarefas, fui no Adept e vi que o KNetworkManager não estava instalado, aí instalei, mas ele não aparece na barra de tarefas.
 
por Fabiano (anônimo) em 28 de março de 2010 às 13h50
Estou começando a usar Linux (ubuntu 9.10)após muitos anos usando Windows, venho me guiando por tutoriais da net, para eu configurar a internet usei o comendo sudo pppoeconf fiz a configuração manual que bem facil, a internet funcionaou muito bem, mas na procima vez que eu liguei o pc não conecta mais. Gostaria de saber como eu desfaço as configurações manuais que eu fiz. Se alguem puder me ajudar fico grato, pois gostei muito do ubuntu mas como ainda não tenho conhecimeto em linux estou quebrando cabeça.
 
por Nil santana (anônimo) em 2 de janeiro de 2010 às 15h47
Olá, só um comentário de agradecimento.
Esse post me inspirou a encontrar a solução pra configurar a rede, de forma simples, no Kubuntu que era algo que estava me aporrinhando a alguns dias.
chamei o applet do nm-aplett pelo terminal e foi o que bastou pra me livrar do Knetworkmanager, que simplesmente não consegue conectar no 3G.
então é isso, obrigado!
feliz 2010
 
por m.bugre (anônimo) em 25 de setembro de 2009 às 07h01
saudaçoes a todos!
instalei o kurumin-NG (kubuntu?) em micro de amigo, o Desktop Megaware veio com Satulinux(ele não gostou) pois a rede PPPoE com DHCP só funciona quando configura 1a. vez, ao reiniciar, conecta (ifconfig ppp0 ,mostra isso) mas não navega, o artigo não mostra como configurar o /etc/network/interfaces para rede via rádio com autenticação nome+senha que usa wlan e dhcp, pior que não funcionar é funcionar e parar no reboot, fica aquela impressão: no Linux só funciona com algum técnico, se reinicia ele pára, então não presta(citação de um leigo em informática), me ajudem a melhorar a imagem do Linux, que é muito nais seguro que windows. Obrigado desde já.
 
por rebengomes (anônimo) em 12 de setembro de 2009 às 19h42
Morimoto gostaria de saber como faço para conectar duas interfaces de rede ao mesmo tempo. Por exemplo wlan0 (que conecta a internet através de um adaptador usb) e eth0 (que compartilha a internet). Não estou conseguindo fazer com que as duas interfaces funcionem ao mesmo tempo (estou usando o wicd) quando uma está funcionando a outra para. O que fazer?
 
por elinhares (anônimo) em 31 de agosto de 2009 às 10h35
Uso do debina lenny e na pasta /etc/dbus-1/event.d/ nao tem o arquivo 25NetworkManager....
 
por bertoni (anônimo) em 18 de março de 2009 às 10h34
Considero que o NetworkManager ainda não está maduro...

Mas antes gostaria de dizer que não posso concordar com a afirmação de que não haja mais espaço para sistemas como o Kurumin-7.

É verdade que o distinto usuário final gosta de perfumaria. Mas gosta também de sistema funcionando com facilidade. Ele não quer ser programador nem advinhador. Quer que a coisa funcione.

E aí entrava o Kurumin, que tanto servia para quem queria o sistema funcionando facilmente, tanto para os que gostavam de fuçar. Por isso foi porta de entrada ao mundo Linux para milhares de brasileiros e muitos estrangeiros (teve até um clone árabe).

Outros sistemas evoluíram na perfumaria, mas não encontrei nenhum tão fácil de usar e tão transparente quanto ao Kurumim, que me permite tanto usá-lo de modo automágico, como manual, "na unha" ou "metendo a mão na massa" como diz o Morimoto.

Um exemplo? Estou testando o BigLinux que tem o network-manager e o knemo por padrão e um script netcardconfig simplificado como opçõa extra. Pois bem. Minha rede lá só funcionou estavelmente depois que importei o netcardconfig do K-7 para o BigLinux e configurei o sistema para carregar a rede no boot com a ajuda deste script traduzido e adaptado pelo Morimoto.

é um script? e daí? funciona. é o que importa. é claro que se pode colocar umas flores e deixar o script mais bonito, mas parece que tem muita gente querendo complicar onde não precisa em nome das perfumarias.
 
por anna kamilla (anônimo) em 15 de março de 2009 às 17h26
graças a sua dica desfiz uma cagada que tinha feito no ubuntu.

mas como o meu é um dhcp deixei meu etc/network/interfaces assim:

auto lo
iface lo inet loopback

e voltou a funcionar normal.
 
por biro167 (anônimo) em 12 de março de 2009 às 00h54
ps, obrigado por ter dedicado muitas horas de trabalho no kurumin ficou realmente muito bom