Índice
![]() |
Dica |
---|---|
Para um guia geral de rede em GNU/Linux, leia o Guia de Administradores de Rede de Linux. |
Vamos rever a infraestrutura de rede básica do sistema Debian moderno.
Tabela 5.1. Lista de ferramentas de configuração de rede
pacotes | popcon | tamanho | tipo | descrição |
---|---|---|---|---|
ifupdown *
|
V:59, I:99 | 158 | config::ifupdown | ferramenta standard para activar e desactivar a rede (especificação da Debian) |
ifplugd *
|
V:0.4, I:0.9 | 352 | , , | gerir a rede com fios automaticamente |
ifupdown-extra *
|
V:0.02, I:0.2 | 119 | , , |
script de testes de rede para melhorar o pacote
"ifupdown "
|
ifmetric *
|
V:0.01, I:0.09 | 100 | , , | define métricas de rota para uma interface de rede |
guessnet *
|
V:0.05, I:0.2 | 516 | , , |
mapear o script para melhorar o pacote "ifupdown " via
ficheiro "/etc/network/interfaces "
|
ifscheme *
|
V:0.02, I:0.06 | 132 | , , |
scripts de mapeamento para melhorar o pacote "ifupdown "
|
ifupdown-scripts-zg2 *
|
V:0.00, I:0.04 | 232 | , , | scripts da interface Zugschlus para o método manual do ifupdown |
network-manager *
|
V:30, I:37 | 3756 | config::NM | NetworkManager (daemon): gere a rede automaticamente |
network-manager-gnome *
|
V:21, I:32 | 5577 | , , | NetworkManager (frontend do GNOME) |
network-manager-kde *
|
V:1.1, I:3 | 12 | , , | NetworkManager (frontend do KDE) |
cnetworkmanager *
|
V:0.04, I:0.3 | NOT_FOUND | , , | NetworkManager (cliente de linha de comandos) |
wicd
*
|
I:3 | 73 | config::wicd | gestor de rede com fios e sem fios (metapacote) |
wicd-cli *
|
V:0.05, I:0.3 | 103 | , , | gestor de rede com fios e sem fios (cliente de linha de comandos) |
wicd-curses *
|
V:0.2, I:0.7 | 216 | , , | gestor de rede com fios e sem fios (cliente Curses) |
wicd-daemon *
|
V:2, I:3 | 1521 | , , | gestor de rede com fios e sem fios (daemon) |
wicd-gtk *
|
V:2, I:3 | 567 | , , | gestor de rede com fios e sem fios (cliente GTK+) |
iptables *
|
V:26, I:99 | 1304 | config::Netfilter | ferramentas administrativas para packet filtering e NAT (Netfilter) |
iproute *
|
V:50, I:94 | 1084 | config::iproute2 | iproute2, IPv6 e outra configuração de rede avançada: ip(8), tc(8), etc |
ifrename *
|
V:0.2, I:0.4 | 191 | , , | renomear interfaces de rede baseado em vários critérios de estatística: ifrename(8) |
ethtool *
|
V:5, I:14 | 248 | , , | mostra ou altera as definições de um dispositivo Ethernet |
iputils-ping *
|
V:37, I:99 | 156 | test::iproute2 | teste de acessibilidade de rede de uma máquina remota pelo nome-de-máquina ou endereço IP (iproute2) |
iputils-arping *
|
V:0.4, I:4 | 80 | , , | teste de acessibilidade de rede de uma máquina remota especificado pelo endereço ARP |
iputils-tracepath *
|
V:0.4, I:2 | 116 | , , | rastreia o caminho de rede até uma máquina remota |
net-tools *
|
V:71, I:99 | 996 | config::net-tools | conjunto de ferramentas de rede NET-3 (net-tools, configuração de rede IPv4): ifconfig(8) etc. |
inetutils-ping *
|
V:0.03, I:0.11 | 255 | test::net-tools | teste de acessibilidade de rede de uma máquina remota pelo nome-de-máquina ou endereço IP (legacy, GNU) |
arping *
|
V:0.4, I:3 | 104 | , , | teste de acessibilidade de rede de uma máquina remota especificado pelo endereço ARP (legacy) |
traceroute *
|
V:12, I:99 | 144 | , , | rastreia o caminho de rede até uma máquina remota (legacy, consola) |
dhcp3-client *
|
V:8, I:48 | 60 | config::low-level | Cliente DHCP |
wpasupplicant *
|
V:33, I:44 | 1195 | , , | suporte de cliente para WPA e WPA2 (IEEE 802.11i) |
wpagui *
|
V:0.11, I:0.9 | 726 | , , | Cliente GUI Qt para o wpa_supplicant |
wireless-tools *
|
V:7, I:23 | 325 | , , | ferramentas para manipular Extensões Wireless do Linux |
ppp
*
|
V:7, I:40 | 1016 | , , |
ligação PPP/PPPoE com chat
|
pppoeconf *
|
V:0.2, I:3 | 340 | config::helper | ajudante de configuração para ligação PPPoE |
pppconfig *
|
V:0.17, I:1.5 | 1024 | , , |
ajudante de configuração para ligação PPP com chat
|
wvdial *
|
V:0.4, I:1.9 | 348 | , , |
ajudante de configuração para ligação PPP com wvdial e
ppp
|
mtr-tiny *
|
V:1.7, I:16 | 120 | test::low-level | rastreia o caminho de rede até uma máquina remota (curses) |
mtr
*
|
V:0.6, I:3 | 180 | , , | rastreia o caminho de rede até uma máquina remota (curses e GTK+) |
gnome-nettool *
|
V:3, I:34 | 2920 | , , | ferramentas para operações comuns de informação de rede (GNOME) |
nmap
*
|
V:6, I:28 | 7104 | , , | mapeamento de rede / sondagem de portos (Nmap, consola) |
zenmap *
|
V:0.2, I:1.3 | 2400 | , , | mapeamento de rede / sondagem de portos (GTK+) |
knmap
*
|
V:0.02, I:0.2 | NOT_FOUND | , , | mapeamento de rede / sondagem de portos (KDE) |
tcpdump *
|
V:3, I:22 | 980 | , , | analisador de tráfego de rede (Tcpdump, consola) |
wireshark *
|
V:1.6, I:8 | 2256 | , , | analisador de tráfego de rede (Wireshark, GTK+) |
tshark *
|
V:0.4, I:3 | 339 | , , | analisador de tráfego de rede (consola) |
nagios3 *
|
V:0.5, I:1.7 | 29 | , , | sistema de monitorização e gestão para máquinas, serviços e redes (Nagios) |
tcptrace *
|
V:0.04, I:0.3 | 436 | , , |
produz um sumário das ligações a partir da saída do
tcpdump
|
snort
*
|
V:0.4, I:0.6 | 1308 | , , | sistema flexível de detecção de intrusos na rede (Snort) |
ntop
*
|
V:0.7, I:1.6 | 1856 | , , | mostra a utilização da rede num navegador web |
dnsutils *
|
V:12, I:91 | 373 | , , | clientes de rede disponibilizados com BIND: nslookup(8), nsupdate(8), dig(8) |
dlint
*
|
V:0.4, I:6 | 96 | , , | verifica informação de zona DNS usando pesquisas do servidor de nomes |
dnstracer *
|
V:0.08, I:0.4 | 92 | , , | rastreia uma cadeia de servidores DNS até à fonte |
A nomeação do nome de domínio é difícil para os utilizadores de PCs normais de estação de trabalho. O PC estação de trabalho pode ser móvel que salta pela rede ou está localizado atrás da firewall de NAT e é inacessível a partir da Internet. Para tais casos, você pode não querer que o nome de domínio seja um nome de domínio válido para evitar colisão de nomes.
![]() |
Dica |
---|---|
Quando você usa um nome de domínio inválido, precisa de iludir o nome de domínio usado por alguns programas como os MTA para que operem de modo apropriado. Veja Secção 6.3.3, “A configuração do endereço de mail”. |
De acordo com rfc2606,
"invalid
" parece ser a escolha para o domínio top level (TLD) para construir
nomes de domínio que se tem a certeza de serem inválidos a partir da
Internet.
O protocolo de descoberta de rede mDNS (Apple Bonjour / Apple Rendezvous, Avahi em Debian) usa "local" como o pseudo domínio top-level. A Microsoft também parece promover "local" para o TLD de rede de área local.
![]() |
Atenção |
---|---|
Se o serviço DNS na sua LAN usar " |
Outras escolhas populares para o TLD inválido parecem ser
"localdomain
", "lan
",
"localnet
", ou "home
" de acordo com as
minhas análises chegadas por mail.
A resolução de nome de máquina também é suportada actualmente pelo mecanismo NSS (Name Service Switch). O fluxo desta resolução é o seguinte.
O ficheiro "/etc/nsswitch.conf
" com uma estrofe tipo
"hosts: files dns
" dicta a ordem de resolução do nome de
máquina. (Isto substitui a funcionalidade antiga da estrofe
"order
" em "/etc/host.conf
".)
O método files
é invocado primeiro. Se o nome de máquina
existe no ficheiro "/etc/hosts
", devolve um endereço
válido para ele e termina. (O ficheiro "/etc/host.conf
"
contém "multi on
".)
O método dns
é invocado. Se o nome de máquina é
encontrado pela consulta ao Internet Domain Name System
(DNS) identificado pelo ficheiro
"/etc/resolv.conf
", devolve um endereço válido para ele e
termina.
O ficheiro "/etc/hosts
" que associa endereços IP com nomes de
máquinas contém o seguinte.
127.0.0.1 localhost 127.0.1.1 <host_name>.<domain_name> <host_name> # As linhas seguintes são desejáveis para máquinas capazes de IPv6 ::1 ip6-localhost ip6-loopback fe00::0 ip6-localnet ff00::0 ip6-mcastprefix ff02::1 ip6-allnodes ff02::2 ip6-allrouters ff02::3 ip6-allhosts
Aqui o <nome_de_máquina> corres ao próprio nome de máquina definido em
"/etc/hostname
". O <nome_de_domínio> aqui é o
nome de domínio totalmente
qualificado (FQDN) desta máquina.
![]() |
Dica |
---|---|
Para <nome_de_domínio> do PC móvel sem o FQDN real, você pode escolher
um TLD fictício e seguro como " |
O "/etc/resolv.conf
" é um ficheiro estático se o pacote
resolvconf
não estiver instalado. Se instalado, é um link
simbólico. De qualquer modo, contém informação que inicializa as rotinas de
resolução de nomes. Se o DNS existir no
IP="192.168.11.1
", contém o seguinte.
nameserver 192.168.11.1
O pacote resolvconf
torna este
"/etc/resolv.conf
" num link simbólico e gere o seu
conteúdo automaticamente pelos scripts hook.
A resolução de nome de máquina via Multicast DNS (usando Zeroconf, aka Apple Bonjour / Apple
Rendezvous) que permite efectivamente resolução de nomes por
programas Unix/Linux comuns no domínio ad-hoc mDNS
"local
", pode ser disponibilizada ao instalar o pacote
libnss-mdns
. O ficheiro
"/etc/nsswitch.conf
" deverá ter uma estrofe como
"hosts: files mdns4_minimal [NOTFOUND=return] dns mdns4
"
para activar esta funcionalidade.
The hostname resolution via deprecated NETBios over TCP/IP used by the older
Windows system can be provided by installing the winbind
package. The "/etc/nsswitch.conf
" file should have
stanza like "hosts: files mdns4_minimal [NOTFOUND=return] dns mdns4
wins
" to enable this functionality. (Modern Windows system
usually use the dns
method for the hostname resolution.)
O nome da interface de rede, ex. eth0
, é atribuído a cada
hardware no kernel Linux através do mecanismo de configuração do espaço de
utilizador, udev
(veja Secção 3.5.11, “O sistema udev”), como é encontrado. O nome da interface de
rede é referido como interface física em
ifup(8)
e
interfaces(5).
De modo a assegurar que cada interface de rede seja nomeada de modo
persistente em cada arranque do sistema usando o MAC address e etc., existe um ficheiro de registo
"/etc/udev/rules.d/70-persistent-net.rules
". Este
ficheiro é gerado automaticamente pelo programa
"/lib/udev/write_net_rules
", provavelmente executado pelo
ficheiro de regras persistent-net-generator.rules
". Você
pode modificá-lo para alterar as regras de nomeação.
![]() |
Cuidado |
---|---|
Quando editar o ficheiro de regras
" |
Vamos lembrar os alcances de endereços do IPv4 a 32 bits em cada classe reservada para usar em redes de área local (LANs) por rfc1918. Estes endereços têm garantia de não entrarem em conflito com quaisquer endereços apropriados na Internet.
Tabela 5.2. Lista de alcances de endereços de rede
Classe | endereços de rede | máscara de rede | máscara de rede /bits | # de sub-redes |
---|---|---|---|---|
A | 10.x.x.x | 255.0.0.0 | /8 | 1 |
B | 172.16.x.x — 172.31.x.x | 255.255.0.0 | /16 | 16 |
C | 192.168.0.x — 192.168.255.x | 255.255.255.0 | /24 | 256 |
![]() |
Nota |
---|---|
Se um destes endereços for atribuído a uma máquina, então essa máquina não pode aceder à Internet directamente mas tem de aceder-lhe através de uma gateway que age como um proxy par serviços individuais ou então faça Network Address Translation(NAT). O router de banda larga geralmente executa NAT para o ambiente LAN do consumidor. |
Apesar da maioria dos dispositivos de hardware serem suportados pelo sistema Debian, existem alguns dispositivos de rede que requerem DSFG drivers de hardware externas não-livres para os suportar. Por favor veja Secção 9.7.8, “Drivers de hardware não-livres”.
Os sistemas Debian squeeze
podem gerir a ligação de rede
via software daemon de gestão como o NetworkManager (NM) (network-manager e
pacotes associados) ou Wicd (wicd e pacotes
associados).
Vêm com as suas próprias GUIs e programas de linha de comandos como as suas interfaces de utilizador.
Vêm com os seus próprios daemons como os seus sistemas de backend.
Permitem ligação fácil do seu sistema à Internet.
Permitem gestão fácil de configuração de redes com fio e sem fios.
Permitem-nos configurar a rede independentemente do pacote legacy
ifupdown
.
![]() |
Nota |
---|---|
Não use estas ferramentas de configuração de rede automáticas em servidores. Estas são destinadas principalmente para os utilizadores móveis em portáteis. |
Estas ferramentas de configuração de rede modernas precisam de ser
configuradas correctamente para evitar entrarem em conflito com o pacote
legacy ifupdown
e o seu ficheiro de configuração
"/etc/network/interfaces
".
![]() |
Nota |
---|---|
Algumas funcionalidades destas ferramentas de configuração de rede
automáticas podem sofrer regressões. Não são tão robustas como o pacote
legacy |
Documentações oficiais para NM e Wicd em Debian são disponibilizadas em
"/usr/share/doc/network-manager/README.Debian
" e
"/usr/share/doc/wicd/README.Debian
", respectivamente.
Essencialmente, a configuração de rede para desktop é feita como se segue.
Tornar o utilizador de ambiente de trabalho, ex. foo
,
pertencente ao grupo "netdev
" com o seguinte
(Alternativamente, faça-o automaticamente via D-bus sob ambientes de trabalho modernos como o GNOME e
o KDE).
$ sudo adduser foo netdev
Mantenha a configuração de "/etc/network/interfaces
" tão
simples como o seguinte.
auto lo iface lo inet loopback
Reiniciar NM ou Wicd com o seguinte.
$ sudo /etc/init.d/network-manager restart
$ sudo /etc/init.d/wicd restart
Configure a sua rede através de GUI.
![]() |
Nota |
---|---|
Apenas as interfaces que não estão
listadas em " |
![]() |
Dica |
---|---|
Se desejar estender as capacidades de configuração de rede do NM, por favor
procure módulos plug-in apropriados e pacotes suplementares como os
|
![]() |
Cuidado |
---|---|
Estas ferramentas automáticas de configuração de rede podem não ser
compatíveis com as configurações esotéricas do legado
|
Quando o método descrito em Secção 5.2, “A configuração de rede moderna para desktop” não satisfaz as suas necessidades, você deve usar a ligação de rede legacy e método de configuração que combina muitas ferramentas mais simples.
A ligação de rede legacy é específica para cada método (veja Secção 5.4, “O método de ligação de rede (legacy)”).
Existem 2 tipos de programas para a configuração de rede de baixo nível em Linux (veja Secção 5.7.1, “Comandos iproute2”).
Os programas antigos net-tools (ifconfig(8), …) são do sistema de rede Linux NET-3. A maioria destes são agora obsoletos.
Os novos programs Linux iproute2 (ip(8), …) são o sistema de rede actual do Linux.
Apesar destes programas de rede de baixo nível serem poderosos, eles são incómodos de utilizar. Então foram criados sistema de configuração de rede de alto nível.
O pacote ifupdown
é o standard de facto para tais
sistemas de configuração de rede de alto nível em Debian. Permite-lhe
activar a rede simplesmente ao fazer, por ex., "ifup
eth0
". O seu ficheiro de configuração é o ficheiro
"/etc/network/interfaces
" e o seu conteúdo típico é o
seguinte.
auto lo iface lo inet loopback auto eth0 iface eth0 inet dhcp
O pacote resolvconf
foi criado como suplemento ao sistema
ifupdown
para suportar configuração suave da resolução de
endereços de rede ao automatizar a rescrita do ficheiro de configuração do
resolvedor "/etc/resolv.conf
". Agora, a maioria dos
pacotes de configuração de rede em Debian estão modificados para usar o
pacote resolvconf
(veja
"/usr/share/doc/resolvconf/README.Debian
").
Scripts de ajuda do pacote ifupdown
tais como
ifplugd
, guessnet
,
ifscheme
, etc. são criados para automatizar a
configuração dinâmica do ambiente de rede como os para PCs móveis numa LAN
de fios. Estes são relativamente difíceis de usar mas jogam bem com o
sistema ifupdown
existente.
Estes estão explicados em detalhe com exemplos (veja Secção 5.5, “A configuração de rede básica com ifupdown (legacy)” e Secção 5.6, “A configuração de rede avançada com ifupdown (legacy)”).
![]() |
Cuidado |
---|---|
O método de teste de ligação descrito nesta secção destina-se a objectivos
de teste. Não se destina a ser usado directamente para as ligações diárias
de rede. Você é avisado para usá-lo via NM, Wicd, ou o pacote
|
O método de ligação de rede típico e caminho de ligação para um PC pode ser resumido ao seguinte.
Tabela 5.3. Lista de métodos de ligação de rede e caminhos de ligação
PC | método de ligação | caminho de ligação |
---|---|---|
Porto série (ppp0 )
|
PPP | ⇔ modem ⇔ POTS ⇔ ponto de acesso dial-up ⇔ ISP |
Porto Ethernet (eth0 )
|
PPPoE/DHCP/Estático | ⇔ BB-modem ⇔ serviço BB ⇔ ponto de acesso BB ⇔ ISP |
Porto Ethernet (eth0 )
|
DHCP/Estático | ⇔ LAN ⇔ router BB com with tradução de endereços de rede (NAT) (⇔ BB-modem …) |
Aqui está um sumário do script de configuração para cada método de ligação.
Tabela 5.4. Lista de configurações de ligação de rede
método de ligação | configuração | pacote(s) backend |
---|---|---|
PPP |
pppconfig para criar conversa determinista
|
pppconfig , ppp
|
PPP (alternativa) |
wvdialconf para criar conversa heurística
|
ppp , wvdial
|
PPPoE |
pppoeconf para criar conversa determinista
|
pppoeconf , ppp
|
DHCP |
descrito em "/etc/dhcp3/dhclient.conf "
|
dhcp3-client
|
IP estático (IPv4) |
descrito em "/etc/network/interfaces "
|
net-tools
|
IP estático (IPv6) |
descrito em "/etc/network/interfaces "
|
iproute
|
A ligação de rede anónima significa o seguinte.
Tabela 5.5. Lista de ligações de rede anónimas
acrónimo | significado |
---|---|
POTS | serviço de antigo telefone simples |
BB | broadband |
serviço BB | ex. a linha de subscrição digital (DSL), a TV por cabo, ou a fibra até aos casas (FTTP) |
modem BB | ex. o modem DSL, o modem de cabo, ou o terminal de rede óptica (ONT) |
LAN | rede de área local |
WAN | rede de área alargada |
DHCP | protocolo de configuração dinâmico de máquina |
PPP | protocolo ponto-para-ponto |
PPPoE | protocolo ponto-para-ponto sobre Ethernet |
ISP | Provedor de serviço de Internet |
![]() |
Nota |
---|---|
Os serviços de ligação WAN via TV por cabo são geralmente servidor por DHCP ou PPPoE. Os de ADSL e FTTP são geralmente servidos por PPPoE. Você tem de consultar o seu ISP para os requerimentos de configuração exactos para a ligação WAN. |
![]() |
Nota |
---|---|
Quando é usado um router BB para criar um ambiente LAN caseiro, os PCs na LAN são ligados à WAN via router BB com tradução de endereços de rede (NAT). Para tais casos, as interfaces de rede dos PCs na LAN são servidas por DHCP ou IP estático a partir do router BB. O router BB tem de ser configurado para ligar à WAN seguindo as instruções do seu ISP. |
A rede moderna típica de casa ou pequena empresa, isto é, LAN, está ligada à WAN (Internet) por um router de banda larga de classe de consumidor. A LAN por detrás de este router é servida geralmente pelo servidor de dynamic host configuration protocol (DHCP) que corre no router.
Instale o pacote dhcp3-client
para a Ethernet servida por
dynamic host configuration
protocol (DHCP).
Nenhuma acção especial necessária para a Ethernet servida pelo IP estático.
O script de configuração pppconfig
configura a ligação
PPP interactivamente ao seleccionar o seguinte.
O número de telefone
O nome de utilizador do ISP
A palavra-passe do ISP
A velocidade da porta
A porta de comunicação do modem
O método de autenticação
Tabela 5.6. Lista de ficheiros de configuração para a ligação PPP com pppconfig
ficheiro | função |
---|---|
/etc/ppp/peers/<nome_do_isp>
|
O ficheiro de configuração gerado pelo pppconfig para um
pppd específico para <nome_de_isp>
|
/etc/chatscripts/<nome_do_isp>
|
O ficheiro de configuração gerado pelo pppconfig para
conversa especifica com <nome_de_isp>
|
/etc/ppp/options
|
O parâmetro de execução geral para o pppd
|
/etc/ppp/pap-secret
|
Dados de autenticação para PAP (risco de segurança) |
/etc/ppp/chap-secret
|
Dados de autenticação para CHAP (mais seguro) |
![]() |
Cuidado |
---|---|
O valor "<nome_do_isp>" do " |
Você pode testar a configuração usando ferramentas de configuração de baixo nível como as seguintes.
$ sudo pon <nome_do_isp> ... $ sudo poff <nome_do_isp>
Veja "/usr/share/doc/ppp/README.Debian.gz
".
Uma aproximação diferente a usar
pppd(8)
é corrê-lo a partir do
wvdial(1)
que vem no pacote wvdial
. Em vez do
pppd
correr o
chat(8)
para marcar e negociar a ligação, o wvdial
faz a marcação
e a negociação inicial e depois arranca o pppd
para fazer
o resto.
O script de configuração wvdialconf
configura a ligação
PPP interactivamente apenas ao seleccionar o seguinte.
O número de telefone
O nome de utilizador do ISP
A palavra-passe do ISP
wvdial
tem sucesso a criar a ligação na maioria dos casos
e mantêm uma lista de dados de autenticação automaticamente.
Tabela 5.7. Lista de ficheiros de configuração para a ligação PPP com wvdialconf
ficheiro | função |
---|---|
/etc/ppp/peers/wvdial
|
O ficheiro de configuração gerado pelo wvdialconf para o
pppd específico para wvdial
|
/etc/wvdial.conf
|
O ficheiro de configuração gerado pelo wvdialconf
|
/etc/ppp/options
|
O parâmetro de execução geral para o pppd
|
/etc/ppp/pap-secret
|
Dados de autenticação para PAP (risco de segurança) |
/etc/ppp/chap-secret
|
Dados de autenticação para CHAP (mais seguro) |
Você pode testar a configuração usando ferramentas de configuração de baixo nível como as seguintes.
$ sudo wvdial ... $ sudo killall wvdial
Veja wvdial(1) e wvdial.conf(5).
Quando o seu ISP o serve com ligação PPPoE e você decide ligar o seu PC
directamente à WAN, a rede do seu PC tem de ser configurada com PPPoE. PPPoE
significa PPP over Ethernet. O script de configuração
pppoeconf
configura a ligação PPPoE interactivamente.
Os ficheiros de configuração são o seguinte.
Tabela 5.8. Lista de ficheiros de configuração para a ligação PPPoE com pppoeconf
ficheiro | função |
---|---|
/etc/ppp/peers/dsl-provider
|
O ficheiro de configuração gerado pelo pppoeconf para o
pppd específico para pppoe
|
/etc/ppp/options
|
O parâmetro de execução geral para o pppd
|
/etc/ppp/pap-secret
|
Dados de autenticação para PAP (risco de segurança) |
/etc/ppp/chap-secret
|
Dados de autenticação para CHAP (mais seguro) |
Você pode testar a configuração usando ferramentas de configuração de baixo nível como as seguintes.
$ sudo /sbin/ifconfig eth0 up $ sudo pon dsl-provider ... $ sudo poff dsl-provider $ sudo /sbin/ifconfig eth0 down
Veja "/usr/share/doc/pppoeconf/README.Debian
".
A configuração tradicional de rede
TCP/IP no sistema Debian usa o pacote ifupdown
como uma ferramenta de alto nível. Existem 2 casos típicos.
Para sistemas de IP dinâmico como os PCs
portáteis, você configurar a rede TCP/IP com o pacote resolvconf
para
permitir-lhe mudar facilmente a configuração da sua rede (veja Secção 5.5.4, “A interface de rede servida por DHCP”).
Para sistemas de IP estático como os
servidores, você deve configurar a rede TCP/IP sem o pacote resolvconf
e manter
o seu sistema simples (veja Secção 5.5.5, “A interface de rede com IP estático”).
Estes métodos de configuração tradicionais são muito úteis se desejar definir configurações avançadas (veja Secção 5.5, “A configuração de rede básica com ifupdown (legacy)”).
O pacote ifupdown
disponibiliza uma estrutura standard
para a configuração de rede de alto nível no sistema Debian. Nesta secção,
aprendemos a configuração básica de rede com o ifupdown
com uma introdução simplificada e muitos exemplos típicos.
O pacote ifupdown
contém dois comandos:
ifup(8)
e
ifdown(8).
Eles oferecem configuração de rede de alto nível ditada pelo ficheiro de
configuração "/etc/network/interfaces".
Tabela 5.9. Lista de comandos de configuração de rede básicos com ifupdown
comando | acção |
---|---|
ifup eth0
|
activa a interface de rede eth0 com a configuração
eth0 se a estrofe "iface eth0 " existir
|
ifdown eth0
|
desactiva a interface de rede eth0 com a configuração
eth0 se a estrofe "iface eth0 " existir
|
![]() |
Atenção |
---|---|
Não use ferramentas de configuração de baixo nível tais como os comandos ifconfig(8) e ip(8) para configurar uma interface em estado activo. |
![]() |
Nota |
---|---|
Não existe nenhum comando |
A sintaxe chave de "/etc/network/interfaces
" como
explicada em
interfaces(5)
pode ser resumida ao seguinte.
Tabela 5.10. Lista de estrofes em "/etc/network/interfaces
"
estrofe | significado |
---|---|
"auto <nome_da_interface> "
|
inicia a interface <nome_da_interface> no arranque do sistema |
"allow-auto <nome_de_interface> "
|
, , |
"allow-hotplug <nome_de_interface> "
|
inicia a interface <nome_de_interface> quando o kernel detecta um evento hotplug da interface |
Linhas começadas com "iface <nome_de_configuração>
… "
|
definem a configuração de rede <nome_de_configuração> |
Linhas iniciadas com "mapping <nome_da_interface_global>
"
|
define valor de mapeamento de <nome_de_configuração> para o <nome_de_interface> correspondente |
A linha começada com um cardinal "# "
|
ignorar como comentários (os comentários no fim da linha não são suportados) |
Uma linha terminada com uma barra inversa "\ "
|
estende a configuração para a próxima linha |
As linhas começadas com a estrofe iface
têm a seguinte sintaxe.
iface <nome_de_configuração> <familia_de_endereços> <nome_do_método> <opção1> <valor1> <opção2> <valor2> ...
Para a configuração básica, a estrofe mapping
não é usada e você usa o
nome da interface de rede como o nome da configuração de rede (Veja Secção 5.6.5, “A estrofe de mapeamento”).
![]() |
Atenção |
---|---|
Não defina duplicados da estrofe " |
A seguinte entrada de configuração no ficheiro
"/etc/network/interfaces
" activa a interface de rede
loopback lo
durante o arranque do sistema (via estrofe
auto
).
auto lo iface lo inet loopback
Isto existe sempre no ficheiro "/etc/network/interfaces
".
Após preparar o sistema por Secção 5.4.1, “A ligação DHCP com a Ethernet”, a interface de rede
servida por DHCP é configurada ao criar a entrada de configuração no
ficheiro "/etc/network/interfaces
" como o seguinte.
allow-hotplug eth0 iface eth0 inet dhcp hostname "minha_máquina"
Quando o kernel Linux detecta a interface física eth0
, a
estrofe allow-hotplug
faz com que ifup
active a interface e a estrofe iface
faz com que
ifup
use DHCP para configurar a interface.
A interface de rede servida por IP estático é configurada ao criar a entrada
de configuração no ficheiro "/etc/network/interfaces
"
como se segue.
allow-hotplug eth0 iface eth0 inet static address 192.168.11.100 netmask 255.255.255.0 gateway 192.168.11.1 dns-domain example.com dns-nameservers 192.168.11.1
Quando o kernel Linux detecta a interface física eth0
, a
estrofe allow-hotplug
faz com que ifup
active a interface e a estrofe iface
faz com que
ifup
use IP estático para configurar a interface.
Aqui, eu assumi o seguinte.
Alcance de endereços IP da rede LAN: 192.168.11.0
-
192.168.11.255
Endereço IP da gateway: 192.168.11.1
Endereço IP do PC: 192.168.11.100
O pacote resolvconf
: instalado
The domain name: "example.com
"
Endereço IP do servidor DNS: 192.168.11.1
Quando o pacote resolvconf
não está instalado, a
configuração relacionada com DNS precisa ser feita manualmente ao editar o
ficheiro "/etc/resolv.conf
" como se segue.
nameserver 192.168.11.1 domain example.com
![]() |
Cuidado |
---|---|
Os endereços IP usados no exemplo em cima não se destinam a ser copiados literalmente. Você tem de ajustar os números do IP à configuração da sua rede actual. |
A LAN wireless (WLAN resumindo) disponibiliza a ligação sem fios mais rápida através da difusão espectral de bandas de rádio não licenciadas baseada no conjunto de standards chamado IEEE 802.11.
As interfaces de WLAN são quase iguais às interfaces Ethernet normais mas
requerem que lhes seja disponibilizado um ID de rede e dados de chave de
encriptação quando são inicializadas. As suas ferramentas de rede de alto
nível são exactamente as mesmas das interfaces Ethernet com a excepção que
os nomes das interfaces são um pouco diferentes como
eth1
, wlan0
, ath0
,
wifi0
, … dependendo das drivers de kernel usadas.
![]() |
Dica |
---|---|
O dispositivo |
Aqui estão algumas palavras chave para lembrar para a WLAN.
Tabela 5.11. Lista de siglas para WLAN
acrónimo | palavra completa | significado |
---|---|---|
NWID | ID de rede | ID de rede a 16 bit usado por redes pre-802.11 WaveLAN (muito descontinuado) |
(E)SSID | (Extenso) Service Set Identifier | nome de rede dos Pontos de Acesso Wireless (APs) interligados para formar uma LAN 802.11 wireless integrada, ID de Domínio |
WEP, (WEP2) | Wired Equivalent Privacy | standard de encriptação wireless 64-bit (128-bit) de 1ª geração com chave de 40 bits (descontinuado) |
WPA | Wi-Fi Protected Access | standard de encriptação wireless de 2ª geração (maioria dos 802.11i), compatível com WEP |
WPA2 | Wi-Fi Protected Access 2 | standard de encriptação wireless de 3ª geração (todos 802.11i), não compatível com WEP |
A escolha actual do protocolo é normalmente limitada pelo router wireless que você possui.
Você precisa de instalar o pacote wpasupplicant
para
suportar a WLAN com o novo WPA/WPA2.
No caso de IP servidor por DHCP em ligação WLAN,
a entrada no ficheiro "/etc/network/interfaces
" deverá
ser como a seguinte.
allow-hotplug ath0 iface ath0 inet dhcp wpa-ssid homezone # hexadecimal psk is encoded from a plaintext passphrase wpa-psk 000102030405060708090a0b0c0d0e0f101112131415161718191a1b1c1d1e1f
Veja "/usr/share/doc/wpasupplicant/README.modes.gz
".
Você precisa de instalar o pacote wireless-tools
para
suportar a WLAN com o antigo WEP. (O seu router pode ainda usar esta
infraestrutura insegura, mas é melhor do que nada.)
![]() |
Cuidado |
---|---|
Por favor note o seu tráfego de rede em WLAN com WEP pode ser interceptado por outros. |
No caso de IP servidor por DHCP em ligação WLAN,
a entrada no ficheiro "/etc/network/interfaces
" deverá
ser como a seguinte.
allow-hotplug eth0 iface eth0 inet dhcp wireless-essid Home wireless-key1 0123-4567-89ab-cdef wireless-key2 12345678 wireless-key3 s:password wireless-defaultkey 2 wireless-keymode open
Veja "/usr/share/doc/wireless-tools/README.Debian
".
Você precisa de configurar a ligação PPP primeiro como descrito antes (veja
Secção 5.4.3, “A ligação PPP com o pppconfig”). Depois, adicione a
entrada no ficheiro "/etc/network/interfaces
" para o
dispositivo PPP principal ppp0
como se segue.
iface ppp0 inet ppp provider <nome_do_isp>
Você precisa primeiro de configurar a ligação PPP alternativa com o
wvdial
como descrito antes (veja Secção 5.4.4, “A ligação PPP alternativa com o wvdialconf”). Depois,
adicione a entrada no ficheiro "/etc/network/interfaces
"
para o dispositivo PPP principal ppp0
como se segue.
iface ppp0 inet wvdial
Para um PC ligado directamente à WAN servido por PPPoE, você precisa de
configurar o sistema com a ligação PPPoE como descrito antes (veja Secção 5.4.5, “A ligação PPPoE com o pppoeconf”). Depois, adicione a
entrada no ficheiro "/etc/network/interfaces
" para o
dispositivo PPPoE principal eth0
como se segue.
allow-hotplug eth0 iface eth0 inet manual pre-up /sbin/ifconfig eth0 up up ifup ppp0=dsl down ifdown ppp0=dsl post-down /sbin/ifconfig eth0 down # O seguinte é usado apenas internamente iface dsl inet ppp provider dsl-provider
O ficheiro "/etc/network/run/ifstate
" armazena os estados
de configuração de rede desejados para
todas as interfaces de rede actualmente activas e geridas pelo pacote
ifupdown
numa lista. Infelizmente, mesmo que o sistema
ifupdown
falhe ao activar uma interface como desejado, o
ficheiro "/etc/network/run/ifstate
" lista-a como activa.
A menos que o resultado do comando ifconfig(8) para uma interface não tenha uma linha como o exemplo seguinte, não pode ser usada como parte de uma rede IPV4.
inet addr:192.168.11.2 Bcast:192.168.11.255 Mask:255.255.255.0
![]() |
Nota |
---|---|
Para o dispositivo Ethernet ligado a PPPoE, ao resultado do comando ifconfig(8) falta uma linha que se parece com o exemplo em cima. |
Quando você tenta reconfigurar a interface, por ex.,
eth0
, tem que primeiro desactivá-la com o comando
"sudo ifdown
eth0
". Isto remove a entrada de eth0
do ficheiro "/etc/network/run/ifstate
". (Isto pode
resultar nalguma mensagem de erro se a eth0
não estiver
activa ou tiver sido mal configurada anteriormente. Até agora, parece ser
seguro fazer isto para a estação de trabalho simples de um utilizador a
qualquer altura.)
Agora você é livre de rescrever o conteúdo de
"/etc/network/interfaces
" como necessitar para
reconfigurar a interface de rede eth0
.
Então, você pode reactivar eth0
com o comando "sudo ifup eth0
".
![]() |
Dica |
---|---|
Você pode (re)inicializar a interface de rede com um simples " |
O pacote ifupdown-extra
disponibiliza testes de ligação
de rede fáceis para usar com o pacote ifupdown
.
O comando network-test(1) pode ser usado a partir da shell.
Os scripts automáticos são corridos para cada execução do comando
ifup
.
O comando network-test
poupa-lhe a trabalheira de
executar comandos de baixo nível para analisar o problema de rede.
Os scripts automáticos estão instalados em
"/etc/network/*/
" e executam o seguinte.
Verificar a ligação de cabo de rede
Verificar o uso duplicado de endereço IP
Configura rotas estáticas do sistema baseadas na definição
"/etc/network/routes
"
Verificar se a gateway de rede está ao alcance
Grava os resultados no ficheiro "/var/log/syslog
"
Este registo do syslog é bastante útil para administração de problemas de rede no sistema remoto.
![]() |
Dica |
---|---|
O comportamento automático do pacote |
A funcionalidade do pacote ifupdown
pode ser melhorada
para além do que foi descrito em Secção 5.5, “A configuração de rede básica com ifupdown (legacy)” com
conhecimentos avançados.
As funcionalidades descritas aqui são completamente opcionais. Estou a ser preguiçoso e minimalista, raramente me incomodo a usar isto.
![]() |
Cuidado |
---|---|
Se você não consegue configurar a ligação de rede com a informação em Secção 5.5, “A configuração de rede básica com ifupdown (legacy)”, irá agravar a situação co usar a informação em baixo. |
O pacote ifplugd
é uma ferramenta antiga de configuração
de rede automática que apenas pode gerir ligações Ethernet. Isto resolve
situações de ligar/desligar cabos Ethernet para portáteis e etc. Se você tem
o NetworkManager ou o Wicd (veja Secção 5.2, “A configuração de rede moderna para desktop”) instalado, não
precisa deste pacote.
Este pacote corre um daemon e substitui as
funcionalidades auto ou allow-hotplug (veja Tabela 5.10, “Lista de estrofes em "/etc/network/interfaces
"”) e inicia as interfaces após a sua
ligação à rede.
Aqui está como usar o pacote ifplugd
para o porto
Ethernet interno, ex. eth0
.
Remova a estrofe em "/etc/network/interfaces
":
"auto eth0
" ou "allow-hotplug eth0
".
Mantenha a estrofe em "/etc/network/interfaces
":
"iface eth0 inet …
" e "mapping …
".
instale o pacote ifplugd
.
Corra "sudo dpkg-reconfigure ifplugd
".
Coloque eth0
como a "interface estática para ser
correspondida pelo ifplugd".
Agora, a configuração de rede funciona como deseja.
Após o ligar da máquina ou após a descoberta do hardware, a interface não é activada por si própria.
Processo de arranque rápido sem o longo tempo limite do DHCP.
Nenhuma interface activada de modo esquisito sem um endereço IPv4 apropriado (veja Secção 5.5.12, “O estado de configuração de rede do ifupdown”).
Após encontrar o cabo Ethernet, a interface é activada.
Após algum tempo depois de desligar o cabo Ethernet, a interface é desactivada automaticamente.
Após ligar outro cabo Ethernet, a interface é activada sob o novo ambiente de rede.
![]() |
Dica |
---|---|
Os argumentos para o comando ifplugd(8) podem definir o seu comportamento tal como o atraso para reconfigurar interfaces. |
O pacote ifmetric
permite-nos manipular métricas de rotas
à posteriori mesmo para DHCP.
O seguinte configura a interface eth0
para ser preferida
sobre a interface wlan0
.
Instale o pacote ifmetric
.
Adicione uma linha de opção com "metric 0
" logo por baixo
da linha "iface eth0 inet dhcp
".
Adicione uma linha de opção com "metric 1
" logo por baixo
da linha "iface wlan0 inet dhcp
".
O 0 (zero) métrico significa a rota de prioridade mais alta e é a predefinição. O valor métrico mais alto significa rotas de prioridade mais baixa. O endereço IP da interface activa com o valor métrico mais baixo torna-se o originário. Veja ifmetric(8).
Uma única interface Ethernet física pode ser configurada como múltiplas interfaces virtuais com endereços IP diferentes. Normalmente o objectivo é ligar uma interface a diferentes sub-redes de IP. Por exemplo, hospedagem web virtual baseada em endereço IP por uma única interface de rede é uma das tais aplicações.
Por exemplo, vamos supor o seguinte.
Uma única interface Ethernet an sua máquina está ligada a um hub de Ethernet (não ao router de banda larga).
O hub Ethernet esta ligado a ambos; Internet e rede LAN.
A rede LAN usa a sub-rede 192.168.0.x/24
.
A sua máquina usa endereço IP servido por DHCP com a interface física
eth0
para a Internet.
A sua máquina usa 192.168.0.1
com a interface virtual
eth0:0
para a LAN.
As seguintes estrofes em "/etc/network/interfaces
"
configuram a sua rede.
iface eth0 inet dhcp metric 0 iface eth0:0 inet static address 192.168.0.1 netmask 255.255.255.0 network 192.168.0.0 metric 1
![]() |
Cuidado |
---|---|
Apesar deste exemplo de configuração com network address translation (NAT) que usa netfilter/iptables (veja Secção 5.9, “Infraestrutura do netfilter”) poder disponibilizar um router barato para a LAN com apenas uma interface única, não existem capacidades reais de firewall com tal configuração. Você deve usar 2 interfaces físicas com NAT tornar a rede local segura a partir da Internet. |
O pacote ifupdown
oferece configuração de rede avançada
usando o nome de configuração de rede e o
nome de interface de rede. Eu uso uma
terminologia ligeiramente diferente da usada em
ifup(8)
e
interfaces(5).
Tabela 5.12. Lista de terminologia para dispositivos de rede
terminologia do manual | a minha terminologia | exemplos no texto seguinte | descrição |
---|---|---|---|
nome da interface física | nome da interface de rede |
lo , eth0 ,
<nome_da_interface>
|
nome dado pelo kernel do Linux (usando o mecanismo udev )
|
nome da interface lógica | nome da configuração de rede |
config1 , config2 ,
<nome_da_configuração>
|
testemunho de nome seguindo iface no
"/etc/network/interfaces "
|
Os comandos de configuração de rede básicos em Secção 5.5.1, “A sintaxe de comando simplificada” requerem que o testemunho de nome
da configuração de rede da estrofe
iface
corresponda ao
nome da interface de rede em
"/etc/network/interfaces
".
Comandos de configuração de rede avançados activam a separação do nome da
configuração de rede e o nome da
interface de rede em
"/etc/network/interfaces
" como se segue.
Tabela 5.13. Lista de comandos avançados de configuração de rede com ifupdown
comando | acção |
---|---|
ifup eth0=config1
|
torna activa a interface de rede eth0 com a configuração
config1
|
ifdown eth0=config1
|
torna inactiva a interface de rede eth0 com a
configuração config1
|
ifup eth0
|
torna activa a interface de rede eth0 com a configuração
seleccionada pela estrofe mapping
|
ifdown eth0
|
torna inactiva a interface de rede eth0 com a
configuração seleccionada pela estrofe mapping
|
Nós saltamos a explicação da estrofe mapping
no
"/etc/network/interfaces
" em Secção 5.5.2, “A sintaxe básica de "/etc/network/interfaces"” para evitar
complicações. Esta estrofe tem a seguinte sintaxe.
mapping <glob_de_nome_de_interface> script <nome_de_script> map <script_de_entrada1> map <script_de_entrada2> map ...
Isto disponibiliza funcionalidade avançada ao ficheiro
"/etc/network/interfaces
" ao automatizar a escolha da
configuração com o script de mapeamento especificado pelo
<nome_do_script>
.
Vamos seguir a execução do seguinte.
$ sudo ifup eth0
Quando o "<glob_de_nome_de_interface>
" corresponde
a "eth0
", esta execução produz a execução do seguinte
comando para configurar eth0
automaticamente.
$ sudo ifup eth0=$(echo -e '<script_entrada1> \n <script_entrada2> \n ...' | <nome_do_script> eth0)
Aqui, as linhas de entrada do script com "map
" são
opcionais e pode ser repetidas.
![]() |
Nota |
---|---|
O glob para a estrofe |
Aqui está como mudar manualmente entre várias configurações de rede sem
reescrever o ficheiro "/etc/network/interfaces
" file como
em Secção 5.5.13, “A base da configuração de rede” .
Para todas as configurações de rede que precisa aceder, você cria um único
ficheiro "/etc/network/interfaces
" como o seguinte.
auto lo iface lo inet loopback iface config1 inet dhcp hostname "mymachine" iface config2 inet static address 192.168.11.100 netmask 255.255.255.0 gateway 192.168.11.1 dns-domain example.com dns-nameservers 192.168.11.1 iface pppoe inet manual pre-up /sbin/ifconfig eth0 up up ifup ppp0=dsl down ifdown ppp0=dsl post-down /sbin/ifconfig eth0 down # The following is used internally only iface dsl inet ppp provider dsl-provider iface pots inet ppp provider provider
Por favor note que o nome de configuração de
rede o qual é o testemunho após iface
não usa o testemunho para
o nome da interface de rede. Também, não
existe nenhuma estrofe auto
nem estrofe allow-hotplug
para iniciar a
interface de rede eth0
automaticamente após eventos.
Agora você está pronto para comutar a configuração de rede.
Vamos levar o seu PC para uma LAN servida por DHCP. Você activa a interface de rede (a interface física)
eth0
ao atribuir o nome de configuração de rede (o nome lógico da interface)
config1
a ela pelo seguinte.
$ sudo ifup eth0=config1 Password: ...
A interface eth0
está activa, configurada por DHCP e
ligada a LAN.
$ sudo ifdown eth0=config1 ...
A interface eth0
está inactiva e desligada da LAN.
Vamos levar o seu PC para uma LAN servida por IP estático. Você activa a
interface de rede eth0
ao atribuir-lhe o nome de configuração de
rede config2
para ela com o seguinte.
$ sudo ifup eth0=config2 ...
A interface eth0
está activa, configurada com IP estático
e ligada à LAN. Os parâmetros adicionais dados como dns-*
configuram o conteúdo de "/etc/resolv.conf
". Este
"/etc/resolv.conf
" é melhor is better gerido se o pacote
resolvconf
estiver instalado.
$ sudo ifdown eth0=config2 ...
A interface eth0
está inactiva e desligada da LAN, outra
vez.
Vamos levar o seu PC para uma porta em modem-BB ligado ao serviço servido de
PPPoE. Você activa a interface de rede
eth0
ao atribuir o nome de configuração de rede pppoe
a ela
com o seguinte.
$ sudo ifup eth0=pppoe ...
A interface eth0
está activa, configurada com ligação
PPPoE directamente ao ISP.
$ sudo ifdown eth0=pppoe ...
A interface eth0
está inactiva e desligada, outra vez.
Vamos levar o seu PC para uma localização sem LAN ou modem BB mas com POTS e
modem. Você activa a interface de rede
ppp0
ao atribuir o nome de configuração de rede pots
a ela
com o seguinte.
$ sudo ifup ppp0=pots ...
A interface ppp0
está activa e ligada à Internet com PPP.
$ sudo ifdown ppp0=pots ...
A interface ppp0
está inactiva e desligada da Internet.
Você deve verificar o ficheiro "/etc/network/run/ifstate
"
para o estado actual da configuração de rede do sistema
ifupdown
.
![]() |
Atenção |
---|---|
Talvez precise de ajustar os números no final de |
O sistema ifupdown
corre automaticamente scripts
instalados em "/etc/network/*/
" enquanto exporta
variáveis de ambiente para os scripts.
Tabela 5.14. Lista de variáveis de ambiente passadas pelo sistema ifupdown
variável de ambiente | valor passado |
---|---|
"$IFACE "
|
nome físico (nome da interface) da interface a ser processada |
"$LOGICAL "
|
nome lógico (nome da configuração) da interface a ser processada |
"$ADDRFAM "
|
<família_de_endereços> da interface |
"$METHOD "
|
<nome_de_método> da interface. (ex., "static") |
"$MODE "
|
"start" se corrido a partir de ifup , "stop" se corrido a
partir de ifdown
|
"$PHASE "
|
como para "$MODE ", mas com granularidade mais fina,
distinguindo as fases pre-up , post-up ,
pre-down e post-down
|
"$VERBOSITY "
|
indica se "--verbose " foi usado, regulado para 1 se sim,
0 se não.
|
"$PATH "
|
caminho de busca de comando:
"/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin "
|
"$IF_<OPTION> "
|
valor para a opção correspondente sob a estrofe iface
|
Aqui, cada variável de ambiente, "$IF_<OPTION>
", é
criada a partir do nome da opção correspondente tal como <opção1> e
<opção2> ao preceder "$IF_
", convertendo para
maiúsculas,substituindo os hífens por underscores, e descartando os
caracteres não-alfanuméricos.
![]() |
Dica |
---|---|
Veja Secção 5.5.2, “A sintaxe básica de "/etc/network/interfaces"” para <família_de_endereços>, <nome_de_método>, <opção1> e <opção2> |
O pacote ifupdown-extra
(veja Secção 5.5.14, “O pacote ifupdown-extra”) usa estas variáveis de ambiente
para estender a funcionalidade do pacote ifupdown
. O
pacote ifmetric
(veja Secção 5.6.2, “O pacote ifmetric”) instala o script
"/etc/network/if-up.d/ifmetric
" o qual define a métrica
via variável "$IF_METRIC
". O pacote
guessnet
(veja Secção 5.6.8, “Mapeando com guessnet”),
que disponibiliza um estrutura simples e poderosa para a selecção automática
da configuração de rede via o mecanismo de mapeamento, também as usa.
![]() |
Nota |
---|---|
Para exemplos mais específicos de scripts personalizados de configuração de
rede que usam estas variáveis de ambiente, você deve consultar os scripts
exemplo em " |
Em vez de escolher manualmente a configuração como descrito em Secção 5.6.6, “A configuração de rede comutável manualmente”, você pode usar o mecanismo de mapeamento descrito em Secção 5.6.5, “A estrofe de mapeamento” para seleccionar automaticamente a configuração de rede com scripts personalizados.
O comando
guessnet-ifupdown(8)
disponibilizado pelo pacote guessnet
foi desenhado para
ser usado como um script de mapeamento e disponibiliza uma estrutura
poderosa para melhorar o sistema ifupdown
.
Você listas as condições de teste como o valor para as opções do guessnet
para cada configuração
de rede sob a estrofe iface
.
O mapeamento escolhe a iface
com o primeiro resultado
não-ERRO como a configuração de rede.
Esta utilização dupla do ficheiro
"/etc/network/interfaces
" pelo script de mapeamento,
guessnet-ifupdown
, e a infraestrutura original de
configuração de rede, ifupdown
, não causa impactos
negativos porque as opções do guessnet
apenas exportam
variáveis de ambiente extras para scripts executados pelo sistema
ifupdown
. Veja detalhes em
guessnet-ifupdown(8).
![]() |
Nota |
---|---|
Quando são necessárias múltiplas linhas de opção |
Os comandos Iproute2 oferecem capacidades completas de configuração de rede de baixo nível. Aqui está uma tabela de traduções dos comandos net-tools obsoletos para os novos comandos iproute2 etc.
Tabela 5.15. Tabela de tradução dos comandos obsoletos net-tools
para
os novos comandos iproute2
ferramentas de rede obsoletas | novo iproute2 etc. | manipulação |
---|---|---|
ifconfig(8) |
ip addr
|
endereço de protoco (IP ou IPv6) num dispositivo |
route(8) |
ip route
|
entrada na tabela de rotas |
arp(8) |
ip neigh
|
entrada na cache ARP ou NDISC |
ipmaddr
|
ip maddr
|
endereço multicast |
iptunnel
|
ip tunnel
|
túnel sobre IP |
nameif(8) | ifrename(8) | nomeia as interfaces de rede baseadas no endereço MAC |
mii-tool(8) | ethtool(8) | Definições de dispositivo Ethernet |
Veja ip(8) e Manual da Suite de Utilitários IPROUTE2.
Você pode usar comandos de rede de baixo nível como se segue em segurança pois eles não mudam a configuração de rede.
Tabela 5.16. Lista de comandos de rede de baixo nível
comando | descrição |
---|---|
ifconfig
|
mostra o estado de ligação e endereço das interfaces activas |
ip addr show
|
mostra o estado de ligação e endereço das interfaces activas |
route -n
|
mostra toda a tabela de rotas em endereços numéricos |
ip route show
|
mostra toda a tabela de rotas em endereços numéricos |
arp
|
mostra o conteúdo actual das tabelas de cache ARP |
ip neigh
|
mostra o conteúdo actual das tabelas de cache ARP |
plog
|
mostra o log do daemon ppp |
ping yahoo.com
|
verifica a ligação de Internet para "yahoo.com "
|
whois yahoo.com
|
verifica quem registou "yahoo.com " na base de dados de
domínios
|
traceroute yahoo.com
|
rastreia a ligação Internet até "yahoo.com "
|
tracepath yahoo.com
|
rastreia a ligação Internet até "yahoo.com "
|
mtr yahoo.com
|
rastreia a ligação Internet até "yahoo.com "
(repetidamente)
|
dig [@servidor-dns.com] exemplo.com [{a|mx|any}]
|
verifica os registos DNS de
"exemplo.com " pelo "servidor-dns.com "
para um registo "a ", "mx ", ou
"any "
|
iptables -L -n
|
verifica o filtro de pacotes |
netstat -a
|
procura todos os portos abertos |
netstat -l --inet
|
procura portos a escutar |
netstat -ln --tcp
|
procura portos TCP a escutar (numérico) |
dlint exemplo.com
|
verifica a informação da zona DNS de "exemplo.com "
|
![]() |
Dica |
---|---|
Algumas destas ferramentas de configuração de baixo nível residem em
" |
A optimização de rede genérica está para além do objectivo desta documentação. Eu apenas toco em assuntos pertinentes às ligações de grau de consumidor.
Tabela 5.17. Lista de ferramentas de optimização de rede
pacotes | popcon | tamanho | descrição |
---|---|---|---|
iftop
*
|
V:1.3, I:8 | 109 | mostra informação da utilização de largura de banda numa interface de rede |
iperf
*
|
V:0.5, I:4 | 170 | ferramenta de medição da largura de banda do Protocolo Internet |
apt-spy *
|
V:0.2, I:1.6 | 204 |
escreve um ficheiro "/etc/apt/sources.list " baseado em
testes de largura de banda
|
ifstat *
|
V:0.2, I:1.1 | 88 | InterFace STATistics Monitoring |
bmon
*
|
V:0.2, I:0.8 | 188 | monitor de largura de banda portável e estimador de taxas |
ethstatus *
|
V:0.08, I:0.6 | 84 | script que mede rapidamente a transferência efectiva de um dispositivo de rede |
bing
*
|
V:0.06, I:0.5 | 96 | testador de largura de banda empírica estocástica |
bwm-ng *
|
V:0.2, I:1.3 | 152 | monitor de largura de banda pequeno e simples baseado em consola |
ethstats *
|
V:0.03, I:0.2 | 52 | monitor de estatísticas de Ethernet baseado em consola |
ipfm
*
|
V:0.04, I:0.16 | 156 | ferramenta de análise de largura de banda |
O valor Maximum Transmission Unit
(MTU) pode ser determinado experimentalmente com
ping(8)
com a opção "-M do
" a qual envia pacotes ICMP com tamanho
de dados inicial de 1500 (com offset de 28 bytes para o cabeçalho IP+ICMP) e
encontra o tamanho maior sem fragmentação do IP.
Por exemplo, tente o seguinte
$ ping -c 1 -s $((1500-28)) -M do www.debian.org PING www.debian.org (194.109.137.218) 1472(1500) bytes of data. From 192.168.11.2 icmp_seq=1 Frag needed and DF set (mtu = 1454) --- www.debian.org ping statistics --- 0 packets transmitted, 0 received, +1 errors
Tente 1454 em vez de 1500
Você vê ping(8) com sucesso com 1454.
Este processo e a descoberta do Caminho MTU (PMTU) (RFC1191) e o comando tracepath(8) automatiza isto.
![]() |
Dica |
---|---|
O exemplo em cima com valor PMTU de 1454 é para o meu provedor FTTP anterior o qual usava Modo de Transferência Assíncrona (ATM) com a coluna vertebral da sua rede e servia os seus clientes com PPPoE. O valor PMTU real depende do seu ambiente, ex. 1500 para o meu novo provedor FTTP. |
Tabela 5.18. Regras básicas para o valor MTU óptimo
ambiente de rede | MTU | racional |
---|---|---|
Ligação Dial-up (IP: PPP) | 576 | standard |
Ligação Ethernet (IP: DHCP ou fixo) | 1500 | standard e predefinido |
Ligação Ethernet (IP: PPPoE) | 1492 (=1500-8) | 2 bytes para o cabeçalho PPP e 6 bytes para o cabeçalho PPPoE |
Ligação Ethernet (espinha dorsal do ISP: ATM, IP: DHCP ou fixo) | 1462 (=48*31-18-8) | especulação do autor: 18 para cabeçalho de Ethernet, 8 para trailer de SAR |
Ligação Ethernet (espinha dorsal do ISP: ATM, IP: PPPoE) | 1454 (=48*31-8-18-8) | veja "Configuração de MTU Óptima para Ligações PPPoE ADSL" para o racional |
Adicionalmente a estas regras básicas, você deve saber o seguinte.
Qualquer uso de métodos de túnel (VPN etc.) pode reduzir ainda mais a optimização de MTU pelos seus custos.
O valor MTU não deve exceder o valor PMTU determinado experimentalmente.
O maior valor MTU é geralmente melhor quando são conhecidas outras limitações.
Aqui estão exemplos para definir o valor MTU desde a sua predefinição 1500 até 1454.
Para o DHCP (veja Secção 5.5.4, “A interface de rede servida por DHCP”), você pode as linhas
de estrofe iface
pertinentes em "/etc/network/interfaces
" com o seguinte.
iface eth0 inet dhcp hostname "minhamaquina" pre-up /sbin/ifconfig $IFACE mtu 1454
For the static IP (see Secção 5.5.5, “A interface de rede com IP estático”), you can replace
pertinent iface
stanza
lines in the "/etc/network/interfaces
" with the
following.
iface eth0 inet static address 192.168.11.100 netmask 255.255.255.0 gateway 192.168.11.1 mtu 1454 dns-domain example.com dns-nameservers 192.168.11.1
Para o PPPoE directo (veja Secção 5.4.5, “A ligação PPPoE com o pppoeconf”), você pode substituir a
linha "mtu
" pertinente no
"/etc/ppp/peers/dsl-provider
" com o seguinte.
mtu 1454
O tamanho de segmento máximo (MSS) é usado como uma alternativa ao tamanho do pacote. As relações entre MSS e MTU são as seguintes.
MSS = MTU - 40 para IPv4
MSS = MTU - 60 para IPv6
![]() |
Nota |
---|---|
A optimização baseada no iptables(8) (veja Secção 5.9, “Infraestrutura do netfilter”) pode apertar o tamanho do pacote pelo MSS e é útil para o router. Veja "TCPMSS" em iptables(8). |
A performance do TCP pode ser maximizada ao ajustar os parâmetros de tamanho de buffer TCP como descrito em "Guia de Afinações do TCP" e "Afinações do TCP" para a WAN moderna de alta largura de banda e alta latência. Até agora, os ajustes predefinidos actuais de Debian servem bem mesmo para a minha LAN ligada pelo serviço FTTP rápido de 1G bps.
O Netfilter disponibiliza uma infraestrutura para firewall de estado e tradução de endereços de rede (NAT) com módulos do kernel Linux (veja Secção 3.5.12, “A inicialização de módulos do kernel”).
Tabela 5.19. Lista de ferramentas de firewall
pacotes | popcon | tamanho | descrição |
---|---|---|---|
iptables *
|
V:26, I:99 | 1304 | ferramentas de administração para o netfilter |
iptstate *
|
V:0.11, I:0.7 | 164 | monitoriza continuamente o estado do netfilter (semelhante ao top(1)) |
shorewall-perl *
|
V:0.05, I:0.3 | NOT_FOUND |
Shoreline Firewall, gerador de
ficheiro de configuração do netfilter
(baseado em Perl, recomendado para lenny )
|
shorewall-shell *
|
I:1.0 | NOT_FOUND |
Shoreline Firewall, gerador de
ficheiro de configuração do netfilter
(baseado em shell, alternativo para lenny )
|
O principal programa de espaço de utilizador para o netfilter é o iptables(8). Você pode configurar manualmente e interactivamente o netfilter a partir da shell, salvar o seu estado com iptables-save(8), e restaurá-lo via script init com iptables-restore(8) após o reiniciar do sistema.
Scripts de ajuda de configuração como o shorewall facilitam este processo.
Veja documentação em http://www.netfilter.org/documentation/
(ou em "/usr/share/doc/iptables/html/
").
![]() |
Dica |
---|---|
Apesar destes terem sido escritos para o Linux 2.4, ambos comando iptables(8) e função de kernel netfilter aplicam-se ao Linux 2.6 actual. |