sexta-feira, 19 de setembro de 2008

Distribuição de configurações por DHCP para outras redes

Complemento da prova prática de Redes II no 2/2006 dada pelo Prof. Mauro Tapajós. Autores: André Mantovani, Lucas Souto e Thiago Ribeiro de Morais
Para complementar a prova prática realizada, realizamos uma pesquisa onde foi proposto que o servidor DHCP deveria fornecer IP’s para a rede classe C proposta no problema, conforme mostra a figura a seguir:
O servidor DHCP foi configurado para fornecer uma faixa de IP’s para cada rede no arquivo dhcp.conf. Esta configuração não funcionou, o host dinâmico enviava a mensagem broadcast pela rede e a mensagem ficava retida no roteador. Fizemos a pesquisa e descobrimos no site:
http://www.rnp.br/newsgen/9705/n1-2.html a seguinte afirmação:
“É possível que o servidor DHCP não esteja no mesmo enlace do cliente e que entre eles haja algum roteador que não faca o roteamento dos pacotes DHCP. Deve-se lembrar que o cliente DHCP, por não saber inicialmente quem é o servidor DHCP, utiliza o broadcast para procurá-lo, e que o mesmo pode ser feito pelo servidor até que o cliente tenha um endereço IP fixo. No caso então de, entre o servidor e o cliente, haver um roteador que não encaminhe devidamente pacotes DHCP, há a necessidade de um elemento intermediário: o relay DHCP. O relay DHCP é uma maquina capaz de receber pacotes dos clientes DHCP de sua rede, por exemplo, e encaminhar essas solicitações a um ou mais servidores em outras redes.”
A afirmação acima confirma que a configuração estava correta, no entanto o roteador estava filtrando as mensagens DHCP, não repassando ao servidor as requisições DHCP Discover. No site http://www.ecst.csuchico.edu/~dranch/LINUX/TrinityOS/cHTML/TrinityOS-c-27.html na seção 27.6 - Using DHCP Relay for LANS seperated by routers explica o porque que as requisições DHCP não são retransmitidas pelo roteador Linux.. O outro site onde foi pesquisado foi o site http://under-linux.org/forums/adm-em-geral/89315-dhcp-servindo-ips-de-uma-rede-diferente-da-configurada-em-sua-interface.html neste site é apresentado um tutorial para que se possa montar uma rede onde um servidor DHCP possa servir a mais de uma rede por meio de um roteador.O site http://www.redhat.com/docs/manuals/linux/RHL-7.3-Manual/custom-guide/s1-dhcp-configuring-server.html apresenta como pode ser feito o DHCP Relay através de uma funcionalidade da distribuição RED HAT.

Computação Distribuída

Links relacionados a computação distribuída, contendo informações sobre: middleware, incluindo clusters, grids, máquinas virtuais, ferramentas e outros
Middleware
OpenMOSIX Implementação MOSIX free
Clustermatic Implementação de cluster de alta performance
Beowulf.org Site oficial do Beowulf
User-Mode Linux (source-forge) Máquinas virtuais em Linux
User-Mode Linux Máquinas virtuais em Linux
Linux Virtual Server Project Servidor virtual Linux sobre clusters
Linux Compute Clusters Informações sobre clusters Linux
Linux Clusters Info Center Informação sobre Clusters Linux
Mission-Critical Linux Projeto de extensões do kernel para serviços de missão crítica
Linux HA Project Projeto de clusters HA sobre Linux
Ultramonkey Implementações HA e Load Balance sobre Linux
RockClusters Distribuição Linux voltada para clusters
MSCLinux Distribuição adequada a clusters
Clubmask Ferramentas para gerenciamento e agendamento de clusters
Globus Tecnologias de grids computacionais
Legion Implementação de grid
Condor Gerenciamento de carga de trabalho para computação em grid
OurGrid Implementação nacional de grid
Open Cluster Site do Open Cluster Framework
Clusters Computing IEEE Task Force
OpenSSI Tecnologia que provê alta disponibilidade SSI
Ferramentas para Middlware
Ganglia
Bproc
Supermon
Crono
WebClusterInterface
ClusterMon
Netcluster
OSCAR Ferramentas free para cluster beowulf
SCE Conjunto de ferramentas para cluster Beowulf

Software para Redes

Wireless
Wireless LAN Resources
Info sobre wireless LAN's no linux
Bluez
Pilha Linux bluetoothGerência de Redes e Serviços
Projeto Net SNMP (UCD)
Pacote Linux SNMP
CACIC
Sistema de controle de inventário em rede em SL
OpenNMS
Implementação de um sistema de gerenciamento free
Nagios
Sistema de monitoramento para Linux (antigo Netsaint)
Zabbix
NMS - Sistema de monitoramento
jffnms
NMS - Sistema de monitoramento
Zenoss
NMS - Sistema de monitoramento
OpenQRM
Sistema de monitoramento de servidores e aplicações (datacenter)
Groundwork
Sistema de monitoramento de TI
NetDirector
Gerenciamento de servidores e serviços
Hyperic
Sistema de monitoramento de servidores e aplicações (datacenter)
OCS Inventory NG
Sistema de inventário e distribuição de atualizações de software
GLPI
Sistema de inventário livre
Splunk
Sistema de monitoramento e análise de eventos e logs de TI
Webmin
Administração WEB de sistemas TI
Mon
Software para monitoramento de serviços e disparo de alarmes
Nedi
Ferramenta para monitoramento de rede
Pandora
Ferramenta para monitoramento de rede
NTop
Ferramenta para analisar utilizaçao de rede
NMIS
Sistema de gerenciamento de rede
MRTG
Sistema de gerenciamento de tráfego em links de dados.
BandwidthD
Sistema que gera gráficos HTML de uso de banda
NAV
Network Administration Visualized
RRDTool
Software para análise gráfica de dados (como no MRTG)
Cisco Centric Open Source
Software livre para gerenciamento de equipamentos Cisco
Decodificador ASN.1
Decodificador simples para ASN.1/BERVoIP, VCF e Multimídia sobre Redes
Asterisk.org
Implementação de PABX em SW livre e suporte a vários protocolos de VoIP. Veja também sua documentação.
AsteriskBrasil
Comunidade nacional do PABX Asterisk
Astlinux
Distribuição Linux pronta com o Asterisk e SER
Open MGCP
Implementação livre MGCP
SER
SIP Express Router (licença GPL)
OpenSER
Router SIP
SIP Foundry
PABX SIP
VOCAL
Vários softwares para VoIP
Ekiga
Implementação de cliente H.323 (antigo Netmeeting)
Voxgratia
Vários projetos em SL VoIP
GNUGK
Implementação GNU de um gatekeeper
vlc
Video LAN cliente multimídia e servidor streaming
LS3
Plataforma aberta para streaming multimedia
Flumotion
Servidor streaming FluendoTerminais e VPN's
hamachi
VPN fácil sobre a Internet
RDesktop
Implementação do protocolo RDP para acesso remoto a servidores Windows via terminal service
Linux Terminal Server Project
Linux como servidor de estações diskless ou thinclients
Open VPN
Implementação VPN lIvre
Amrita VPN
Implementação de VPN
RealVNC
Virtual Network Computing - software free para terminal virtual
UltraVNC
Controle remoto através de rede TCP/IP
puTTY
Software free para terminais e SSH
Automatização
Avahi
Implementação Zeroconf para LinuxRoteamento
Quagga
Implementação de protocolos de roteamento
Mobile IPv6 for Linux
Implementação de suporte a mobilidade IPv6 no Linux
Vyatta
Implementação de roteador, firewall e VPN livreProtocolo LDAP
OpenLDAP
Implementação GPL do protocolo LDAPAnálisadores de Tráfego
tcpdump
Site do utilitário de análise de tráfego
Wireshark
Um bom analisador GPL. Antigo Ethereal.
Ettercap
Sniffer de conexões
kismet
Analisador wireless GPL
Sniff-em
Bom Sniffer - versão free captura somente tráfego entrante
Analyzer
Analisador de protocolos free
Wildpackets
Softwares úteis para análise de redesCorreio Eletrônico
PostFix
Mailer
Squirrel Mail
WEB mail Ferramentas para Testes e Benchmarks em Rede
NetPIPE
Ferramenta de teste de rede independente de protocolo
NetPERF
Benchmarking de rede no Linux
Clusters
OpenMOSIX
Implementação MOSIX free
Arcademis
Plataforma em JAVA para desenvolvimento de middleware orientado a objetos
Clustermatic
Implementação de cluster de alta performance
Beowulf.org
Site oficial do Beowulf
Linux Virtual Server Project
Servidor virtual Linux sobre clusters
Linux Compute Clusters
Informações sobre clusters Linux
Linux Clusters Info Center
Informação sobre Clusters Linux
DRBD
Espelhamento de dispositivos de blocos remotos
Mission-Critical Linux
Projeto de extensões do kernel para serviços de missão crítica
Linux HA Project
Projeto de clusters HA sobre Linux
Multipinguim
Site brasileiro sobre clusters
Ultramonkey
Implementações HA e Load Balance sobre Linux
OSCAR
Ferramentas free para cluster beowulf
RockClusters
Distribuição Linux voltada para clusters
MSCLinux
Distribuição adequada a clusters
Clubmask
Ferramentas para gerenciamento e agendamento de clusters
Grid's
Globus
Tecnologias de grids computacionais
Legion
Implementação de grid
Condor
Gerenciamento de carga de trabalho para computação em grid
OurGrid
Implementação nacional de gridSegurança
Snort
IDS em código aberto
GuardDog
Configurador de firewall (iptables)
M0n0wall
Firewall baseado em freeBSD que pode rodar a partir do CD, guardando as configurações em diskette
Astaro
Firewall para Linux grátis
Prelude
IDS híbrido para Linux
Nessus
Sistema de teste da segurança para Linux
Osiris
Verificador de integridade de arquivos e serviços no sistema- IDS
OpenSSH
Implementaçao free do SSH
Firewall Builder
Interface GUI para vários firewallsQoS sobre Redes
altQ
Implementação de enfileiramento alternativo Simuladores de Rede
ns
Network Simulator
BlueHoc
Simulador Bluetooth
NIST.net
Network emulator
cnet
Simulador de protocolos de rede

Ferramentas de Rede Úteis em ambiente GNU/Linux

Pequena lista com comandos e utilitários úteis para efetuar trabalhos relacionados com redes no GNU/Linux
Primeiramente, verifique se os comandos/utilitários abaixo estão no sistema e disponíveis para o usuário em questão. Alguns dos comandos exigem privilégios de root (administrador) do sistema.
Todos os programas são software livre.
ifconfig - configura e ativa interfaces de rede do sistemaping – envia mensagens ICMP de echo request/reply. Algumas opções:-c : envia n requests somente-b : ping “broadcast”-Q : define parâmetro QoS-r : envia diretamente para o host-s : define o tamanho da mensagem ICMP (default é 64 bytes = 56-payload + 8-cabeçalho bytes)-t : ajusta o TTL do pacote
tcpdump – visualização de cabeçalhos de pacotes de rede na tela. Pode mandar para um arquivo e ler do mesmo. Algumas opções:-D : interfaces vistas pelo tcpdump-c : captura c pacotes-e : informação de camada de enlace-A : imprime os pacotes em ASCII-n : não resolve nomes (mostra endereços como são)-v : modo verbose (pode-se aumenta-lo com -vv -vvv)-x : mostra o PDU em hexadecimal-S : mostra números de sequência em formato absoluto (por padrão o tcpdump mostra os números relativos aos valores iniciais estabelecidos na conexão)-t : retira a informação de timestamp do início da linha-ttt : mostra a diferença de tempo para uma referência em us (microsegundos)expressão – indica que pacotes devem ser mostrados (dumped) Ex.:tcpdump -n icmptcpdump src tcpdump dst tcpdump host tcpdump 'tcp[13] & 2==2' -> obtem somente os segmentos com SYN ligadomais detalhes: "man tcpdump" na linha de comando
traceroute – encontra a rote que os pacotes seguirão para o destino mencionado. Algumas opções:-f : ajusta o TTL do primeiro pacote a ser enviado
mtr – ferramenta de diagnóstico de rede. Comandos ping e traceroute combinados com respostas online em tabela, ao estilo do comento top.ethtool - informações sobre interfaces ethernetnetstat – fornece várias informações de rede-r : mostra tabelas de rotas (mesma saída do comando route sem argumentos)-i : informação das interfaces de rede-s : estatísticas de protocolos usados-t : mostra sockets TCP-u : mostra sockets UDP-w : mostra sockets RAW (não dependem de protocolo de transporte)-a : mostar sockets em todos os estados-l : mostra sockets que estão “ouvindo” (LISTEN - esperando uma conexão)-n : não resolve nomes (para endereços e portas)
nmap – faz uma varredura nas portas disponibilizadas no sistema-v : verbose mode-sT : tenta conexão TCP completa nas portas. Qualquer usuário pode usar.-sU : tenta varrer portas UDP-sS : envia apenas segmentos SYN. Os receber o SYN/ACK termina a conexão com um RST (somente para usuários privilegiados). Uma das vantagens sé que, em muitos sistemas, isto não é logado por firewalls ou programas equivalentes.-sV : além de descobrir portas disponíveis, tenta ir além descobrindo que serviços e versões estão sendo disponibilizados-F : testa todas as portas no arquivo /etc/services-p : testa TODAS as portas (65.000)-f : força a fragmentação do segmento para dificultar a análise por parte de firewalls e semelhantes.
lsof – mostra arquivos abertos (lembre-se que sockets são encarados pelo Linux como outro arquivo qualquer) e quem está usando. Algumas opções:-i : mostra todos os arquivos relacionados com uma interface de rede-U : mostra apenas arquivos do tipo sockets
fuser – identifica processos e usuários que estão usando arquivos ou sockets.Sintaxe: pp/pro – mostra o processo que está usando o protocolo e porta. Ex.: fuser -v 22/tcp
arp – verifica e manipula a tabela arp do sistema-v : saída detalhada-a : tabelas ARP de todas as interfaces
arping – envia requests ARP para hosts determinadostethereal – analisador de tráfego baseado no Ethereal, que é um analisador de pacotes em modo gráfico. O Tethereal é sua versão em modo texto. Algumas opções:-V : mostra todos os detalhes de cada pacote capturado-x : mostra o dump de informação coletada (informação “bruta”) em formato hexadecimal
Outras ferramentas do pacote Ethereal são:capsinfo – informações de um arquivo de capturadftest - ?editcap – converte entre formatos de analisadoresmergecap – faz o merge de dois ou mais arquivos de capturatext2pcap – converte arquivos de dumps de pacotes num arquivo de capturanemesis – geração e envio de pacotes com cabeçalhos definidospackit – geração e envio de pacotes com cabeçalhos definidos