Err… tirando o miguxismo, eu ando realmente impressionado com o NetworkManager. Assim como diversas outras coisas, rede é algo que passou a simplesmente funcionar pra mim, nos últimos anos. Fiquei com vontade de falar das coisas que ele me ajudou a fazer nos últimos tempos.
Deixa eu começar contando uma simples: indo pra a GCDS, no aeroporto do Rio eu encontrei o Vinícius Depizol. Eu estava com meu sabonete 3g (também conhecido como ‘mini-modem’), e ofereci compartilhar a Internet com ele. Conectei ao 3g usando o NM, e conectamos os dois um cabo de rede que eu tinha na mochila. Os NMs se acharam e configuraram uma rede local sem a gente mexer em nada. Enquanto eu abria um terminal para fazer os já tradicionais echos e iptables, o Vinícius me agradeceu. Espantado eu percebi que o danado já estava navegando na Internet sem eu ter feito nada. NM danadinho, fazendo tudo pra mim. *hug*
O NM da Lu não foi tão bonzinho. Quando precisei compartilhar Internet com ela, o NM dela não quis saber de configurar uma rede local comigo. Aí, o que eu fiz? Abri o diálogo de configuração de conexões, adicionei uma conexão chamada ‘Compartilhar’ nas conexões ‘wired’, e na aba ‘ipv4 settings’ escolhi ‘Shared to other computers’, no combo ‘Method’. Meu NM conectou nessa, e o NM da Lu pegou IP no meu computador via DHCP, e estava navegando. Sensacional.
Agora o mais foda. Essa semana a gente mudou de apartamento temporário, aqui no Rio, e o novo apartamento tava sem Internet. Eu não queria ficar tendo trabalho, e a gente tem o nosso AP. O que eu queria era que meu computador usasse a conexão 3g como padrão (o NM costuma priorizar assim: wired > wireless > 3g), mas também conectasse à wireless para compartilhar a conexão com o computador da Lu.

No meu computador abri o editorzinho de conexões, fui na conexão wireless ‘gnu’ (é o nosso essid =P), e na aba ‘ipv4 settings’ fui no botão ‘Routes’. Selecionei o checkboxzinho ‘Use this connection only for resources in its network’. Pronto. Isso faz com que o NM fique conectado na ‘gnu’, mas não use o endereço que o DHCP entrega como gateway padrão. Aí vem o segundo passo. No computador da Lu, configuramos a conexão ‘gnu’ assim: no Method de ipv4 colocamos ‘Manual’ e na lista de endereços adicionamos o IP que o DHCP normalmente dá, a netmask da rede e o IP do meu computador como gateway. Também colocamos os ips dos DNSs no lugar certo.

Teoricamente seria possível pegar tudo por DHCP e configurar o NM pra ignorar as rotas dadas automaticamente, e configurar a rota padrão nós mesmos, no diálogo ‘Routes’, mas nós não conseguimos fazer isso funcionar, então apelamos pro Manual. Com isso nós estávamos usando a rede wireless só como uma forma de termos uma conexão entre nós, e compartilhamos minha conexão 3g numa boa. Ia ser um saco configurar isso tudo na mão, uns anos atrás. Viva 2009.
