Entendendo o NetworkManager
Publicado em 18/02/2009 – 19:10por Carlos Morimoto
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:

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":

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.



29 respostas para “Entendendo o NetworkManager”
Ótimo texto.
Agora já sei porque no Ubuntu 8.10 não tem mais o /etc/dbus-1/event.d/25NetworkManager stop. Lembro que no meu servidor newbie só consegui fazer com que a rede funcionasse corretamente no Ubuntu 8.04 desativando o NetworkManager e configurando a rede no /etc/network/interfaces.
Eu desisti deste aplicativo, pois para quem usa autologin é um saco ficar dando senha para acessar o gerenciador de senhas toda vez que se liga o micro e tenta-se usar a rede wireless. E para isto não tem solução, como já visto nos foruns do Ubuntu.
Lá eles recomendam e eu também recomendo trocar para o wicd ( http://wicd.sourceforge.net/ ) que é muito melhor, rápido e muito mais prático!!!
Vale a pena, já tem download para Ubuntu e muitas outras distros de nome. Muito fácil instalar e pratico.
Já usado como padrão nas distros como Zenwalk e Mint XFCE e tantas outras.
Fica aqui a dica para quem usa wireless.
Legal o artigo, até pouco tempo atrás eu não o conhecia e fui conhecer ao trabalhar com o Mandriva, quando voltei para o Arch Linux no meu notebook, eu procurei ele, e para minha surpresa estava no pacman!
Excelente aplicativo, principalmente para notebooks!
Bruno Garcia, este problema de pedir senha ao tentar usar a rede wireless não é um problema do networkmanager, pois aqui (openSUSE) uso autologin e não preciso digitar senha nenhuma para conectar a rede wireless. Acredito que seja um problema relacionado ao ubuntu.
Essa coisa do network manager pedir senha só acontece, se você digitar a senha de root depois de conectar a interface pela primeira vez. Senão digitar nada ou cancelar a ação ele vai reclamar que a senha vai ser armazenada de forma insegura, mas não vai pedir mais quando achar a rede.
Não é bem assim, já havia tentando isto e muitas outras coisas, mas não vou me prolongar no assunto, basta dar uma rápida pesquisada (no meu caso uma longa pesquisada) em http://ubuntuforum-br.org/ e http://ubuntuforums.org/
Só estou afirmando que o wicd é muito superior ao NetworkManager em se tratando de wireless. Não sei sobre 3G, pois não tenho, mas tenho varias redes wireless e cabeadas.
Fica aqui a dica para quem tiver problemas com este aplicativo ou alguém que queira fazer um artigo sobre o wicd que já vem sendo adotado com grande sucesso por varias distros baseadas no Ubuntu e Kubuntu.
Olha só,
Quando conecto meu Modem 3G(Sony Ericsson MD300) ele detecta mas fica desabilitado…mas consigo realizar a conexão usando o discador Gnome-PPP, tem como usar o Network-Manager para fazer a conexão sem utilizar este discador ?
Um abraço,
Leandro.
O NetworkManager é um serviço, isso aí apresentado é a interface gráfica para o Gnome. Por sinal, ela é beeeem melhor que a que acompanha o KDE. Eu estou preso a internet à rádio e o Knetworkmanager não conseguia se conectar a essa rede por causa de do endereço mac, que ele não conseguia editar. Então eu instalei a interface do Gnome para o NetworkManager (sudo apt-get install network-manager-gnome). Para rodá-lo (já que ele não cria uma entrada no Kick-Off) basta apertar Alt+F2 e digitar "nm-applet".
Essa GUI é um exemplo de como as pessoas tem a impressão errada do Windows. Só porque elas conseguem utiliza-lo não significa que ele é fácil de usar. A interface de Rede de qualquer Windows é uma bagunça sem lógica nenhuma perto desse applet.
Realmente o aplet do KDE é pobre, não dando opção para configurar o IP manualmente.
Sr Morimoto gostei bastante do artigo, mas poderia me tirar uma duvida? Eu também utilizo o ubunto 8.10 e na primeira screen do seu artigo da para ver um item "Conexões VPN" eu tenho instalado uma VPN no meu ubunto e ela funciona bem mas quando acesso esse aprlicativo nenhum dos botões fica habilitado… (Uso o openvpn)
Qual aplicativo habilita esses botões ?
@ Leandro:
Sim, há: clique com o botão direito no ícone do NM no tray, verifique se as redes estão habilitadas. Se estiverem, clique em "Editar conexões". Clique na guia "Banda Larga Móvel" e verifique se existe a conexão da sua operadora configurada. Se tiver, edite e clique em "Conectar automaticamente". Se não tiver, procure o artigo do Morimoto que ensina a fazer a conexão banda larga pelo NM e não esqueça de habilitar a conexão automática. Com sorte, já pode ter uma configuração para a sua operadora pronta nos templates. Senão, vc pode usar um template e trocar os dados para os da sua operadora (eu usei o template da Claro e troquei os valores para a Vivo).
Ainda estou usando o Kurumin 7 e não pretendo trocar tão cedo… Ou serei obrigado a abandoná-lo. Ele funciona em tudo que é máquina, desde micros antigos e neste que estou agora que é um novinho em folha… Desculpe estar dizendo isto aqui, mais o scripts vão desaparecer?
Por que o Kurumin 7 e tão bom?
Por que não há um continuação?
Estou estudando bastante para usar um novo kernel e atualizá-lo para lenny por exemplo, sem perder suas características… Alias ele é perfeito em redes tanto cabeada quanto wireless…
Antonio, o conceito de "bom" é sempre muito relativo, mas uma diferença importante do Kurumin 7 em relação a outras distribuições é o uso de shell-scripts nas ferramentas de configuração, no lugar de aplicativos mais elaborados. Isso faz com que muitos usem termos pejorativos, mas por outro lado faz com que o sistema fosse bem mais ágil e torna mais fácil corrigir problemas e adicionar recursos adicionais.
Com relação a ser descontinuado, fiz dois anúncios no final de 2007 e em seguida um novo anúncio no início de de 2008 e, resumindo, não houve interesse por parte de outros desenvolvedores em continuar o projeto.
Mesmo o Kurumin NG (que acabou sendo abandonado depois de algum tempo, em meio à confusão que muitos devem ter acompanhado), foi baseado no Kubuntu e não no Kurumin 7.
De uma maneira geral, dá para dizer que o Kurumin foi importante entre 2003 e 2006, por ser mais fácil de usar que outras distribuições disponíveis na época, mas acabou se tornando redundante com o surgimento de distribuições mais amigáveis. Hoje em dia existe uma tendência muito forte com relação ao uso de distribuições mais bem estabelecidas e um amadurecimento geral por parte dos usuários, o que acho bem positivo. Distribuições como o Kurumin não têm mais espaço dentro dessa nova realidade.
o sistema do kurumin 7.0 é muito mais eficiente do que este…pelo menos em meu note (aspire 3050)que só veio a fincionar depois que fiz a atualização da bios.
Mas o pricipal comentário não é esse…a conexão só acontece quendo destrava o chaveiro padrão…já destravei e pede de novo! e por causa disso não reconecta, somente quando reinicio o computador novamente.
será um bug?
É quase irresistível escrever em algum post onde o kurumin seja citado, acho que devo ser um kurumin fã-boy, mas vou tentar me conter e parar aqui… e guardar meus pensamentos…
Boa noite! Sr morimoto sou novo no ubuntu e tenho um not da marca megaware serie meganote dcj series e que ja vem com a placa wireless instalada nele e o que acontece que o ubuntu reconhece a placa e a minha rede mas nao conecta e eu uso tb o win xp no mesmo not que se conecta bem a net e o mais incrivel que instalei o vmware com o ubuntu tb e ele se conecta la,o que pode ser
caro amigo morimoto todos reséitamos sua opnião em querer parar ou quem sabe dar um tempo, mais dai a dizer que não tem mais espaço para o kurumim hoje em dia , é bem diferente, neste momento to usando ele aqui e não penso em trocar por um unico motivo é o mais apropiado para mim que não entendo quase nada de soft, e tbm não aprecio ser chamado de pirata , ladrão e outros termos que esfomeados mega milhonários do soft usam pra def os widows maniacos
ps, obrigado por ter dedicado muitas horas de trabalho no kurumin ficou realmente muito bom
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.
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.
Uso do debina lenny e na pasta /etc/dbus-1/event.d/ nao tem o arquivo 25NetworkManager….
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?
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á.
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
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.