Peso: 7
Arquivos de configuração
Os principais arquivos de configuração da rede são:
/etc/HOSTNAME ou /etc/hostname Contém o nome atribuído a máquina local. /etc/hosts
Associa os números IP da rede a nomes. Mais prático para pequenas redes. /etc/networks
Semelhante ao /etc/hosts, atribui nomes à números de rede. /etc/nsswitch.conf
Determina os locais de busca por aliases, números de rede, bancos de usuários e senhas, etc. Palavras chaves como files, nis e dns determinam qual deve ser a origem para o requerimento de sistema. Exemplo de /etc/nsswitch.conf: hosts: files dns networks: files services: files protocols: files rpc: files ethers: files netmasks: files netgroup: files bootparams: files /etc/host.conf
Mesma função de /etc/nssitch.conf em sistemas pré glibc2. /etc/resolv.conf
Especifica o(s) servidor(es) DNS.
Exemplo de /etc/resolv.conf:
domain meuservidor.com.br nameserver 200.230.224.1 nameserver 200.230.224.2
Cada distribuição organiza de maneira própria os scripts de configuração de interfaces de rede. No Slackware, informações para cada interface de rede podem constar no arquivo
/etc/rc.d/rc.inet1.conf. No Debian , as configurações para cada interface de rede podem
ser manualmente determinadas em /etc/network/interfaces.
Tópico 112: Fundamentos de Redes
Configuração da interface
Fundamental para o funcionamento da rede é que a interface de rede esteja configurada corretamente. Estando o hardware corretamente preparado – tanto na parte física da rede quanto quanto ao
carregamento do modulo referente à interface local – a interface pode ser configurada manualmente através do programa ifconfig. Uma interface de rede também ser configurada automaticamente pelo sistema na hora do boot, dependendo dos scripts de configuração da distribuição.
O comando ifconfig possui muitas opções, mas mas seu uso fundamental é definir um endereço IP para a interface de rede, por exemplo:
ifconfig eth0 192.168.1.2 up
À interface eth0 foi atribuído o IP 192.168.1.2. Para desfazer as alterações, usa-se down no lugar de up e os argumentos são desnecessários. A máscara de rede para a interface também pode ser especificada:
ifconfig eth0 192.168.1.2 netmask 255.255.255.0 up
O ifconfig também é usado para inspecionar as configurações de uma interface. Sem argumentos, mostra as configurações de todas as interfaces ativas do sistema.
# ifconfig eth0
eth0 Link encap:Ethernet HWaddr 00:D0:09:76:B7:6C
inet addr:200.228.60.237 Bcast:255.255.255.255 Mask:255.255.255.0 UP BROADCAST NOTRAILERS RUNNING MULTICAST MTU:1500 Metric:1
RX packets:920058 errors:0 dropped:0 overruns:0 frame:0 TX packets:826694 errors:0 dropped:0 overruns:0 carrier:0 collisions:434 txqueuelen:1000
RX bytes:397187958 (378.7 Mb) TX bytes:471065517 (449.2 Mb) Interrupt:9 Base address:0xde00
Configuração de Rotas
O comando route mostra e cria rotas de rede.
Exemplo de rotas em um sistema:
# route -n
Kernel IP routing table
Destination Gateway Genmask Flags Metric Ref Use Iface 200.228.60.0 0.0.0.0 255.255.255.0 U 0 0 0 eth0 127.0.0.0 0.0.0.0 255.0.0.0 U 0 0 0 lo 0.0.0.0 200.228.60.1 0.0.0.0 UG 0 0 0 eth0
O campo Flags mostra o estado de funcionamento da rota, podendo conter os seguintes caracteres:
U → Rota ok
H → O alvo é um host G → É a rota Gateway
R → Restabelecer rota por roteamento dinâmico
D → Rota estabelecida dinamicamente por daemon ou redirecionamento M → Modificada por daemon ou redirecionada
Tópico 112: Fundamentos de Redes
Exemplo: Cria uma rota na interface eth0, para a rede 192.168.1.0, usando máscara de rede 255.255.255.0:
# route add -net 192.168.1.0 netmask 255.255.255.0 dev eth0
O termo dev pode ser omitido.
Exemplo: Cria uma rota padrão para o host 200.228.60.1:
# route add default gw 200.228.60.1
Exemplo: Remove a rota padrão para o host 200.228.60.1:
# route del default gw 200.228.60.1
Clientes DHCP
O sistema DHCP permite que uma interface seja configurada automaticamente pelo servidor. O daemon dhcpcd envia uma requisição para a rede através da interface especificada e o servidor responde com informações de endereço IP, máscara de rede, broadcast, etc, que serão usadas para configurar a interface local. Se o nome da interface não for especificado, eth0 será usado.
Os arquivos de configuração do dhcpcd são armazenados em /var/lib/dhcpc. Informações para cada interface utilizando dhcp são armazenadas em arquivos nesse diretório. O PID para dhcpcd é armazenado em /var/run/dhcpcd-interface.pid. Interface é o nome da interface à qual o cliente dhcpcd está vinculado.
Comandos de Configuração e Inspeção
hostname
Mostra ou altera o nome de host do sistema
domainname
Mostra ou altera o nome de domínio do sistema
dnsdomainname
Mostra o nome de domínio do DNS do sistema
ping
Envia pacotes ICMP ECHO_REQUEST para o host especificado e aguarda retorno de ECHO_REPLY.
Exemplo:
# ping -c 3 www.gnu.org
PING gnu.org (199.232.41.10) 56(84) bytes of data.
64 bytes from 199.232.41.10: icmp_seq=1 ttl=52 time=1273 ms
64 bytes from www.gnu.org (199.232.41.10): icmp_seq=2 ttl=52 time=325 ms 64 bytes from www.gnu.org (199.232.41.10): icmp_seq=3 ttl=52 time=567 ms --- gnu.org ping statistics ---
3 packets transmitted, 3 received, 0% packet loss, time 10617ms rtt min/avg/max/mdev = 325.392/722.193/1273.725/402.319 ms, pipe 2
host
Tópico 112: Fundamentos de Redes Converte nomes para IPs e vice-versa, através de pesquisa no servidor DNS.
Exemplo:
# host www.gnu.org
www.gnu.org is an alias for gnu.org. gnu.org has address 199.232.41.10
;; reply from unexpected source: 200.212.223.100#53, expected 200.230.210.6#53 ;; Warning: ID mismatch: expected ID 1737, got 56531
www.gnu.org is an alias for gnu.org. www.gnu.org is an alias for gnu.org.
gnu.org mail is handled by 30 mx30.gnu.org. gnu.org mail is handled by 10 mx10.gnu.org. gnu.org mail is handled by 20 mx20.gnu.org.
traceroute
Mostra as rotas percorridas por um pacote até chegar ao seu destino. Limitando o campo TTL (Time To Live) dos pacotes, traceroute recebe respostas de erro ICMP TIME_EXCEEDED de cada host percorrido.
tcpdump
Retorna os cabeçalhos de pacotes numa determinada interface de rede, opcionalmente utilizando filtros.
netstat
Mostra as tabelas de rotas, as conexões ativas e estatísticas relacionadas.
Exemplo: Mostrar as tabela de rotas do kernel, sem resolver nomes de IPs:
# netstat -rn
Kernel IP routing table
Destination Gateway Genmask Flags MSS Window irtt Iface 200.228.60.0 0.0.0.0 255.255.255.0 U 0 0 0 eth0 127.0.0.0 0.0.0.0 255.0.0.0 U 0 0 0 lo 0.0.0.0 200.228.60.1 0.0.0.0 UG 0 0 0 eth0
Exemplo: Mostrar todas conexões ativas do tipo TCP, sem resolver nomes de IPs:
# netstat -nta
Active Internet connections (servers and established)
Proto Recv-Q Send-Q Local Address Foreign Address State tcp 0 0 0.0.0.0:6000 0.0.0.0:* LISTEN tcp 0 0 0.0.0.0:4662 0.0.0.0:* LISTEN tcp 0 0 0.0.0.0:631 0.0.0.0:* LISTEN tcp 0 13032 200.228.60.237:55022 84.120.229.63:4662 ESTABLISHED tcp 0 0 200.228.60.237:4662 87.235.107.221:4314 ESTABLISHED tcp 0 0 200.228.60.237:50648 207.46.27.21:1863 ESTABLISHED tcp 0 0 200.228.60.237:4662 200.114.228.210:2243 ESTABLISHED tcp 0 0 200.228.60.237:4662 62.43.114.0:2121 ESTABLISHED tcp 0 13068 200.228.60.237:4662 83.58.240.201:22493 ESTABLISHED tcp 0 0 200.228.60.237:49824 207.46.6.46:1863 ESTABLISHED
Tópico 112: Fundamentos de Redes
# netstat -i
Kernel Interface table
Iface MTU Met RX-OK RX-ERR RX-DRP RX-OVR TX-OK TX-ERR TX-DRP TX-OVR Flg eth0 1500 0 1023387 0 0 0 941820 0 0 0 BMNRU lo 16436 0 30881 0 0 0 30881 0 0 0 LRU
Os campos RX correspondem aos pacotes recebidos e TX aos pacotes enviados.