FIC-Linux 2018-2

De MediaWiki do Campus São José
Ir para navegação Ir para pesquisar

Introdução ao Sistema Operacional Linux

  • Encontros: Segundas e Quartas das 19:00 às 22:00 No LabReCom.

Curso FIC Linux 2018

Semestre 2018-2 - Prof. André D'Amato

Introdução ao Sistema Operacional Linux

10/09/18: Aula01

Apresentação da Disciplina, Introdução a Informática e Memória e Armazenamento Aula 01


12/09/18: Aula 02

Introdução ao Linux, Sistema de Arquivos e Conhecendo o Terminal Aula 02

Descrição completa das pastas do linux


17/09/2018: Aula 03

Continuação Comandos no Terminal Aula 03

Lista de Exercícios


17/09/2018: Aula 04

Continuação Comandos no Terminal


  • uname ' -a' ' -r' ' -m'
  • arch
  • wget ' -c -P'
  • Coringas *, ?, []

Direcionar saídas para arquivos

  • >
  • >> (append)


Compactação de Arquivos

  • Para criar ficheiro: tar '-cf'
  • Para descompactar: tar '-x'


  • Questão!!!
  • Sabendo que o arquivo /proc/cpuinfo contém informações detalhadas sobre o seu processador, responda:
    • Quais comandos utilizar para saber quantos núcleos de processamento minha CPU tem?
    • Qual a frequência do meu processador em MHz?


  • Teste1
  • Sabendo que o e-mail do professor é andre.damato@ifsc.edu.br, mande para o professor uma pasta compactada com 2 arquivos, sendo que, um deles contém o seu histórico (history) e no outro uma lista completa de todos os arquivos .bin em seu computador.



Lista de Exercícios


24/09/2018: Aula 05

Introdução ao Gerenciamento de Processos Aula 05 - Gerenciamento de Processos


Aula 05 - Lista de Exercícios Sobre Processos


Aula 05 - Lista de Exercícios Sobre Processos Parte 2


26/09/2018: Aula 06

Gerenciamento de Usuários Aula 06 - Gerenciamento de Usuários




01/10/2018: Aula 07

Permissionamento Aula 07 - Permissionamento


Exercícios: Permissão de Acesso a Arquivos


Permissão de Acesso a Arquivos: parte 2


03/10/2018: Aula 08

Instalação do Ubuntu

Baixar Ubuntu daqui


Instalar Ubuntu no Virtual Box

Instalar VirtualBox no Linux

Instalar VirtualBox no Windows

Instalar Linux no VirtualBox

O Comando apt-get

Atualizar repositório

apt-get update </syntaxhighlight>

Ou

apt update </syntaxhighlight>

Instalar Pacote

apt-get install Nome_Pacote </syntaxhighlight>

Ou

apt install Nome_Pacote </syntaxhighlight>

Remover pacote

apt-get remove Nome_Pacote </syntaxhighlight>

Ou

apt remove Nome_Pacote </syntaxhighlight>

Remover um ou mais pacotes incluindo arquivos de configuração

apt-get purge Nome_Pacote </syntaxhighlight>

Ou

apt purge Nome_Pacote </syntaxhighlight>

Reinstalar pacote

apt-get install –reinstall Nome_Pacote </syntaxhighlight>

Listar pacotes todos disponíveis

apt-cache search . </syntaxhighlight>

Listar pacotes disponíveis que contenham um determinado termo

apt-cache search termo </syntaxhighlight>

Atualizar pacotes instalados

apt-get upgrade </syntaxhighlight>


Exercício: instalar e executar o ssh no Ubuntu que você acabou de instalar:

sudo apt-get install ssh </syntaxhighlight>

Acessar o ssh de outra máquina: ssh -X usuario@numero_ip </syntaxhighlight>

O parâmetro "X" faz o tunelamento do ambiente gráfico, permitindo a execução de aplicações gráficas remotamente e trazendo o resultado para o sistema operacional local. Caso "XC" seja usado, é aplicado compressão no fluxo, o que reduz o uso de rede.

Executar o xterm

Digite no terminal xterm &

Ao adicionar "&" no final de um comando, o mesmo é executado em segundo plano.

Conferir se o firefox realmente está se executando (use o ps)


08/10/2018: Aula 09

Operadores para Comparação Utilizados com IF

-eq : (equal) Igual à -ne : (not equal) Diferente de -lt : (less than) Menor que -gt : (greater than) Maior que -le : (less or egual) Menor ou igual à -ge : (greater or equal) Maior ou igual à

-a O arquivo existe -b É um dispositivo de bloco -c É um dispositivo de caractere -d É um diretório -e O arquivo existe -f É um arquivo normal -g O bit SGID está ativado -G O grupo do arquivo é o do usuário atual -k O sticky-bit está ativado -L O arquivo é um link simbólico -O O dono do arquivo é o usuário atual -p O arquivo é um named pipe -r O arquivo tem permissão de leitura -s O tamanho do arquivo é maior que zero -S O arquivo é um socket -t O descritor de arquivos N é um terminal -u O bit SUID está ativado -w O arquivo tem permissão de escrita -x O arquivo tem permissão de execução -nt O arquivo é mais recente (NewerThan) -ot O arquivo é mais antigo (OlderThan) -ef O arquivo é o mesmo (EqualFile)


</syntaxhighlight>



  • Faça um script para definir se em uma determinada eleição haverá segundo turno. O script criado deverá receber como parâmetro o nome do candidato mais votado e o percentual de votos, e a partir disso imprimir na tela se haverá ou não segundo turno.


10/10/2018: Aula 10


  • ainda shell script
  • comando for
  • comando while
  • Exercício 1: Fazer um shell script para detectar se um arquivo tem permissão para escrita (para usuário owner). Caso não tenha então acrescentar o direito descrita para este arquivo.
  • Exercício 2: Faça um script utilizando o comando de repetição for, que a partir de uma lista de usuários verifique se cada um existe no sistema e imprima a resposta na tela.
  • Exercício 3: Faça um script utilizando o comando de repetição while, que a partir de uma lista de usuários verifique se cada um existe no sistema e imprima a resposta na tela.


Curso FIC Instalação de Redes Residenciais 2018

Semestre 2018-2 - Prof. André D'Amato

Instalação de Redes Residenciais Linux 2018

15/10/18: Aula01

Introdução a Redes de Computadores Aula 01

17/10/18: Aula02

Introdução a Redes de Computadores Aula 02


22/10/18: Aula03

Arquitetura IEEE 802

A arquitetura IEEE 802 define um conjunto de normas e tecnologias no escopo das camadas física (PHY) e de enlace. A camada de enlace é dividida em duas subcamadas:

  • LLC (Logical Link Control): o equivalente a um protocolo de enlace de fato, porém na prática de uso restrito (pouco utilizada).
  • MAC (Medium Access Control): um protocolo de acesso ao meio de transmissão, que depende do tipo de meio físico e tecnologia de comunicação. Esse tipo de protocolo é necessário quando o meio de transmissão é compartilhado.


Arq-ieee.png


Alguns padrões conhecidos (lista completa):

  • IEEE 802.3 e variações: conhecidos como LAN Ethernet
  • IEEE 802.1: tecnologias para interligação de LANs
  • IEEE 802.11 e variações: conhecidos como WLAN (redes locais sem-fio), o que inclui WiFi
  • IEEE 802.15: padrões para WPAN (redes pessoais sem-fio), incluindo Bluetooth

Protocolo de acesso ao meio (MAC)

Parte da camada de enlace na arquitetura IEEE 802, tem papel fundamental na comunicação entre estações. O MAC é responsável por:

  • Definir um formato de quadro onde deve ser encapsulada uma PDU de um protocolo de camada superior. Por exemplo, o quadro Ethernet (padrão IEEE 802.3) tem este formato:


Quadro-ethernet.png
Quadro ethernet


  • Endereçar as estações, já que o meio de transmissão é multiponto (ver campos Endereço Destino (destination address) e Endereço de origem (source address) no quadro Ethernet).
  • Acessar o meio para efetuar a transmissão de quadros, resolvendo conflitos de acesso quando necessário. Um conflito de acesso (chamado de colisão) pode ocorrer em alguns casos quando mais de uma estação tenta transmitir ao mesmo tempo. Isso é fundamental em redes sem-fio, tais como Wifi (IEEE 802.11) e Bluetooth (IEEE 802.15.3), porém não é mais necessário nas LAN ethernet atuais (IEEE 802.3), que operam em modo full-duplex.

Padrão IEEE 802.3 (Ethernet)

Ethernet.png

Desenho usado por Bob Metcalfe, um dos criadores da Ethernet, para apresentação em uma conferência em 1976.


Redes locais Ethernet (padrão IEEE 802.3 e extensões) são compostas de equipamentos que se comunicam, denominados estações (STA na norma IEEE 802.3), de equipamentos que os interligam (hubs e switches), e do meio de transmissão. A figura abaixo ilustra uma rede local hipotética com seus vários componentes.

Lab1-lan-demo.png


De forma geral, uma estação possui um ou mais adaptadores de rede (placas de rede, ou NIC – Network Interface Card), como na figura abaixo à esquerda. Os adaptadores de rede das estações são conectados a um switch por meio de cabos de rede TP (par trançado) com conectores RJ-45, mostrado na figura abaixo à direita.


Lab1-nic-switch.png


Em resumo, são estes os elementos de uma rede Ethernet:

  • Estações: equipamentos que se comunicam pela rede. Ex: computadores e roteadores.
  • Interface de rede (NIC): dispositivo embutido em cada estação com a finalidade de prover o acesso à rede. Implementa as camadas PHY e MAC.
  • Meio de transmissão: representado pelos cabos por onde os quadros ethernet são transmitidos. Esses cabos são conectados às interfaces de rede das estações.
  • Switch: equipamento de interconexão usado para interligar as estações. Cada estação é conectada a um switch por meio de um cabo. Um switch usualmente possui múltiplas interfaces de rede (12, 24 ou mais). Uma rede com switches apresenta uma topologia física em estrela, árvore ou mesmo em anel !


Originalmente LANs Ethernet foram construídas usando um cabo único para interligar as estações (cabo coaxial). Posteriormente surgiram as redes baseadas em hubs, equipamentos que interligavam as estações em nível da camada física (funcionavam como repetidores). Atualmente essas redes são construídas usando switches, equipamentos que interligam as estacões em nível da camada de enlace (na verdade, da subcamada MAC). Um switch apresenta como benefícios, se comparado com hubs:

  1. atuação em nível de MAC: o switch faz o acesso ao meio com CSMA/CD, caso precise se comunicar com um equipamento em half-duplex, ao encaminhar um quadro quebrando o domínio de colisão; além disto, um switch pode operar em modo full-duplex, quando então inexiste a possibilidade de colisão.
  2. preservação da capacidade do canal: para quadros unicast, o switch encaminha um quadro somente pela porta onde reside o destinatário.

Essas características importantes devem fazer com que uma LAN com switches tenha um desempenho superior a uma LAN com hubs. Por desempenho entenda-se um número menor de colisões sob tráfego intenso (ou mesmo ausência total de colisões), e maior capacidade de canal vista por cada equipamento conectado ao switch.


O padrão sofreu um grande número de atualizações e extensões desde sua concepção nos anos 1980. Por exemplo, em sua primeira versão uma rede ethernet apresentava taxa de transmissão de 10 Mbps em half-duplex, porém atualmente essas redes operem em 1 Gbps em modo full-duplex. Na realidade, já existem versões em uso com taxas de 10 Gbps, e outras mais recentes com taxas de até 100 Gbps. Uma tabela dessas extensões ao padrão podem ser vistas na Wikipedia.


Além de taxas maiores de transmissão, a operação em modo full-duplex predominante nas versões recentes do padrão prescindem do controle de acesso ao meio feito pelo protocolo MAC. Quando em modo half-duplex, o controle de acesso ao meio do tipo CSMA/CD (Carrier Sense Multiple Access/Collision Detect - Acesso Múltiplo com Detecção de Portadora/Detecção de Colisões) ainda é necessário.

O acesso do tipo CSMA/CD é probabilístico: uma estação verifica se o meio está está livre antes de iniciar uma transmissão, mas isso não impede que ocorra uma colisão (apenas reduz sua chance). Se acontecer uma colisão, cada estação envolvida usa esperas de duração aleatória para desempate, chamadas de backoff. A ideia é que as estações sorteiem valores de espera diferentes, e assim a que tiver escolhido um valor menor consiga transmitir seu quadro. Veja o fluxograma acima para entender como isso é feito.

Csmacd-fluxograma.jpg
Fluxograma para o acesso ao meio com CSMA/CD do padrão IEEE 802.3.


As colisões e esperas (backoffs) impedem que esse protocolo de acesso ao meio aproveite totalmente a capacidade do meio de transmissão. Nas gerações atuais do padrão IEEE 802.3 (Gigabit Ethernet e posteriores) o CSMA/CD não é mais utilizado. Nessas atualizações do padrão, o modo de comunicação é full-duplex (nas versões anteriores, que operavam a 10 e 100 Mbps, há a possibilidade de ser half ou full-duplex). Se as comunicações são full-duplex, então conceitualmente não existem colisões. Isso se deve ao fato de que nessas novas versões cada estação possui uma via exclusiva para transmitir e outra para receber, portanto não existe mais um meio compartilhado.

Atividade

Realizar este conjunto de experimentos.


Aula04 24/10/2018

A ferramenta Wireshark

Tcp Dump

tcpdump -i eth0 -ln

</syntaxhighlight>


Protocolo ARP


Atividade

Realizar este conjunto de experimentos.


AULA 05 e 06 29/10/ 31/10 de 2018

Padrão IEEE 802.11 (WLAN)

O padrão IEEE 802.11 define uma tecnologia de redes locais sem-fio (WLAN), mais conhecida como WiFi. Esse tipo de rede tem como algumas características o baixo custo dos dispositivos, facilidade de utilização e boas taxas de transmissão em curtas distâncias (algumas dezenas de metros). Apesar de ter sido projetada para redes locais, essa tecnologia também tem sido usada para redes de média distância (alguns km). No entanto, para distâncias mais longas o padrão precisa ser adaptado para que funcione de forma eficiente. Para entender como criar enlaces de acesso sem-fio de alguns quilômetros usando esse tipo de tecnologia, é necessário entender seus princípios de funcionamento.

Estrutura de uma rede IEEE 802.11

Uma rede local sem-fio (WLAN) IEEE 802.11 é implantada por um equipamento especial chamado de ponto de acesso (AP - Access Point). Esse equipamento estabelece uma WLAN, de forma que computadores, smartphones, PDAs, laptops, tablets (e outros dispositivos possíveis) possam se comunicar pelo canal sem-fio. Esses dispositivos são denominados estações sem-fio (WSTA - Wireless Station), e se comunicam usando o AP como intermediário. Isso significa que todas as transmissões na WLAN são intermediadas pelo AP: ou estão indo para o AP, ou vindo dele. Além disso, uma WSTA somente pode se comunicar na WLAN se primeiro se associar ao AP - isto é, se registrar no AP, sujeitando-se a um procedimento de autenticação.

Do ponto de vista da organização da WLAN, a menor estrutura possível é o BSS (Basic Service Set), mostrado na figura abaixo. Um BSS é formado por um AP e as WSTA a ele associadas. O BSS possui um nome, identificado pela sigla SSID (Service Set Identifier), que deve ser definido pelo gerente de rede. O BSS opera em um único canal, porém as transmissões podem ocorrer com diferentes taxas de bits (cada quadro pode ser transmitido com uma taxa, dependendo da qualidade do canal sem-fio conforme medida pela WSTA que faz a transmissão). Por fim, apenas uma transmissão pode ocorrer a cada vez, o que implica o uso de um protocolo de acesso ao meio (MAC) pelas WSTA e AP.


Wlan1.png




O AP opera em nível de enlace, de forma parecida com um switch ethernet (porém sua tarefa é um pouco mais complexa ...). Isso quer dizer que o AP não usa o protocolo IP para decidir como encaminhar os quadros das WSTA, e assim não faz roteamento. Uma consequência desse modo de operação do AP é que a junção de dois ou mais AP por meio de um switch ethernet, com seus respectivos BSS, faz com que WSTAs em diferentes BSS possa se comunicar como se fizessem parte da mesma rede local. A união de dois ou mais BSS, mostrada na figura a seguir, se chama ESS (Extended Service Set). Em um ESS, todos os BSS possuem o mesmo SSID. No entanto, ao se criar um ESS deve-se cuidar para evitar que BSS vizinhos usem o mesmo canal.

Wlan2.png


As redes IEEE 802.11b e IEEE 802.11g usam a frequência 2.4 GHz para seus canais, que são espaçados a cada 5 MHz. As redes IEEE 802.11a e IEEE 802.11n usam a frequência de 5 GHz. No caso de IEEE 802.11g, ainda a mais comum de ser usada, os canais são numerados de 1 a 11. Apesar de haver 11 canais, apenas três deles (no máximo) não apresentam sobreposição. Isso se deve à modulação OFDM usada nessa rede, que na prática ocupa uma largura de banda de pouco mais de 20 MHz. A tabela abaixo mostra os canais usados em IEEE 802.11g, indicando a lista de canais interferentes de cada canal.

Wlan-canais.png


No caso da banda de 5 GHz há muito mais canais:

PJI3-Wifi-5ghz.jpg

Sistemas de Distribuição

Uma típica WLAN com estrutura distribuída pode ser criada explorando-se o conceito de Sistema de Distribuição (DS - Distribution System).

Em uma rede IEEE 802.11, vários BSS podem se combinar para formarem um ESS (Extended Station Set). A interligação entre os AP deve ser feita em nível de enlace, seja por uma rede cabeada ou por links sem-fio. Essa interligação é denominada Sistema de Distribuição, estando exemplificada na figura abaixo:


80211-ds.png


O sistema de distribuição funciona como uma ponte entre as WSTA, como mostrado na figura abaixo. Assim, se dois AP forem interligados, as WSTA que pertencem a seus BSS poderão se comunicar como se estivessem na mesma rede local.


80211-ds2.png


Sistemas de distribuição podem ser implantados usando o próprio canal sem-fio, sendo assim denominados WDS (Wireless Distribution System).

Pji3-80211-wds.png


A cobertura de uma área envolve um planejamento que leve em conta as taxas mínimas desejáveis e as características dos equipamentos (potências de transmissão e ganhos de antenas) e do ambiente (existência de obstáculos, reflexões, e fontes de ruído). Além disso, deve-se minimizar a interferência entre BSS vizinhos, o que pode ser feito escolhendo-se canais que não se sobreponham. A figura abaixo mostra conceitualmente como se podem escolher os canais dos AP para atingir esse objetivo.

80211-freq-planning.png


Desta forma, podem-se criar BSS para cobrir uma área e aproveitar melhor a capacidade do meio de transmissão.

80211-cobertura.png

Deve-se levar em conta que a qualidade do sinal tem relação com a modulação usada (e da taxa de dados), assim o limiar entre um BSS e outro depende de como as estações medem a qualidade de sinal e quais as taxas mínimas aceitáveis. A figura abaixo ilustra possíveis alcances para diferentes taxas de dados.

80211-ranges-rates.png
Taxas em função da distância do AP (exemplo, pois depende das condições do ambiente e dos equipamentos)

Considerações sobre implantação de redes locais sem-fio

Vimos que, para ampliar a cobertura de uma rede sem-fio IEEE 802.11, usam-se vários AP interligados em um Sistema de Distribuição (DS). Uma das maiores dificuldades ao se implantar uma rede sem-fio é determinar:

  • quantos AP são necessários
  • onde devem ser instalados
  • qual o canal e potência de transmissão a serem usados em cada AP.

Existem algumas técnicas para estimar a cobertura de cada AP, dados sua potência de transmissão e as características do ambiente em que se encontra (paredes, portas, outros obstáculos). Um bom resumo pode ser encontrado no TCC "Estudo e projeto para o provimento seguro de uma infra-estrutura de rede sem fio 802.11" de Cesar Henrique Prescher, defendido em 2009. Mas mesmo que se apliquem as recomendações ali descritas, ao final será necessário fazer uma verificação em campo da rede implantada. Para isso deve-se medir a qualidade de sinal sistematicamente na área de cobertura, para identificar regiões de sombra (sem cobertura ou com cobertura deficiente) e de sobreposição de sinais de APs. Tal tarefa implica o uso de ferramentas apropriadas e da aplicação de medições metódicas.

O MAC CSMA/CA

O protocolo MAC usado em redes IEEE 802.11 se chama CSMA/CA (Carrier Sense Multiple Access/Collision Avoidance). Ele foi desenhado para prover um acesso justo e equitativo entre as WSTA, de forma que em média todas tenhas as mesmas oportunidades de acesso ao meio (entenda isso por "oportunidades de transmitirem seus quadros"). Além disso, em seu projeto foram incluídos cuidados para que colisões sejam difíceis de ocorrer, mas isso não impede que elas aconteçam. Os procedimentos e cuidados do MAC para evitar e tratar colisões apresentam um certo custo (overhead), que impedem que as WSTA aproveitem plenamente a capacidade do canal sem-fio. Consequentemente, a vazão pela rede sem-fio que pode de fato ser obtida é menor que a taxa de bits nominal (por exemplo, com IEEE 802.11g e taxa de 54 Mbps, efetivamente pode se obter no máximo em torno de 29 MBps).

O protocolo CSMA/CA implementa um acesso ao meio visando reduzir a chance de colisões. Numa rede sem-fio como essa, não é possível detectar colisões, portanto uma vez iniciada uma transmissão não pode ser interrompida. A detecção de colisões, e de outros erros que impeçam um quadro de ser recebido pelo destinatário, se faz indiretamente com quadros de reconhecimento (ACK). Cada quadro transmitido deve ser reconhecido pelo destinatário, como mostrado abaixo, para que a transmissão seja considerada com sucesso.

Wlan-ack.png
Envio de um quadro de dados, com subsequente reconhecimento (ACK)


O não recebimento de um ACK desencadeia uma retransmissão, de forma parecida com o procedimento de retransmissão do CSMA/CD ao detectar colisão. Antes de efetuar uma retransmissão, o MAC espera um tempo aleatório denominado backoff (recuo). Esse tempo é sorteado dentre um conjunto de possíveis valores que compõem a Janela de Contenção (Cw - Contention Window), representados no intervalo [0, Cw]. O valor de Cw varia de (15 para IEEE 802.11a/g/n e 31 para 802.11b) a (1023), e praticamente dobra a cada retransmissão de um mesmo quadro. A figura abaixo ilustra as janelas de contenção para retransmissões sucessivas.

Wlan-backoff.png
Backoff para retransmissões sucessivas


Resumidamente, o protocolo MAC usa basicamente dois mecanismos principais para fazer o acesso ao meio:

  • Antes de uma transmissão, verifica-se se o canal está livre. Caso não esteja, deve-se primeiro aguardar que fique livre.
  • Cada quadro transmitido deve ser confirmado pelo receptor. Isso quer dizer que o receptor deve enviar um quadro de confirmação para o transmissor (ACK). Se esse quadro ACK não for recebido, o transmissor assume que houve um erro. Nesse caso, o transmissor faz uma retransmissão.
  • Antes de uma retransmissão o transmissor se impõem um tempo de espera aleatório chamado de backoff. A duração máxima do backoff depende de quantas retransmissões do mesmo quadro já foram feitas.


A figura abaixo ilustra um cenário em que cinco WSTA disputam o acesso ao meio. Repare os backoff feitos pelas WSTA antes de iniciarem suas transmissões. Esse backoff sempre precede uma transmissão quando a WSTA for verificar o canal sem-fio e o encontra ocupado (pense em por que o MAC deve fazer isso ...).

Wlan-csmaca.png


Por fim, o MAC CSMA/CA usado nas redes IEEE 802.11 define uma formato de quadros, mostrado na figura abaixo. Note que ele é diferente do quadro ethernet, e portanto o AP precisa traduzir os cabeçalhos de quadros que viajam da rede cabeada para a WLAN, e vice-versa. Note também que os endereços MAC do CSMA/CA são os mesmos que em redes ethernet.


Wlan-frame.png

Atividade

Realize estes experimentos sobre redes sem-fio.


Aula 07

Protocolo DHCP

DHCP (Dynamic Host Configuration Protocol) é um protocolo para obtenção automática de configuração de rede, usado por computadores que acessam fisicamente uma rede. Esses computadores são tipicamente máquinas de usuários, que podem usar a rede esporadicamente (ex: usuários ocm seus laptops, com acesso via rede cabeada ou sem-fio), ou mesmo computadores fixos da rede. O principal objetivo do DHCP é fornecer um endereço IP, a máscara de rede, o endereço IP do roteador default e um ou mais endereços de servidores DNS. Assim, um novo computador que acesse a rede pode obter essa configuração sem a intervenção do usuário.

Para esse serviço pode haver um ou mais servidores DHCP. Um computador que precise obter sua configuração de rede envia mensagens DHCPDISCOVER em broadcast para o port UDP 67. Um servidor DHCP, ao receber tais mensagens, responde com uma mensagem DHCPOFFER também em broadcast, contendo uma configuração de rede ofertada. O computador então envia novamente em broadcast uma mensagem DHCPREQUEST, requisitando o endereço IP ofertado pelo servidor. Finalmente, o servidor responde com uma mensagem DHCPACK, completando a configuração do computador cliente. Como a configuração tem um tempo de validade (chamado de lease time), o cliente deve periodicamente renová-la junto ao servidor DHCP, para poder continuar usando-a. O diagrama abaixo mostra simplificadamente esse comportamento:

Dhcp-diag.gif



Abaixo segue um diagrama de estados detalhado do DHCP, mostrando todas as possíveis transições do protocolo:

Dhcpfsm.png

O servidor DHCP identifica cada cliente pelo seu endereço MAC. Assim, o DHCP está fortemente relacionado a redes locais IEEE 802.3 (Ethernet) e IEEE 802.11 (WiFi).

Servidor DHCP

Em uma rede local em que hosts devem obter sua configuração de rede dinamicamente, deve haver ao menos um servidor DHCP. Esse serviço costuma estar disponibilizado em equipamentos de rede, tais como pontos de acesso sem-fio e roteadores. Por exemplo, o roteador sem-fio TP-Link WDR 4300 oferece esse serviço, que pode ser configurado e ativado por meio de sua interface de gerenciamento.

PJI3-Dhcp-tplink.jpg
Configuração do serviço DHCP na interface web do roteador TP-Link WDR4300


Podem existir mais de um servidor DHCP em uma mesma rede local, porém há que ter um cuidado. As faixas de endereços concedidas por diferentes servidores não podem se sobrepor. Assim, se um servidor DHCP oferece endereços entre 192.168.1.20 e 192.168.1.100, um outro servidor DHCP pode oferecer endereços entre 192.168.1.110 e 192.168.1.200, mas não entre 192.168.1.90 e 192.168.1.150.


Servidores DHCP como esse costumam ser limitados. Com eles se consegue tão somente definir a faixa de endereços IP a ser concedida, o tempo de concessão, o servidor DNS e o roteador default. Porém há muitas outras possibilidades no serviço DHCP, tais como:

  • Vincular um endereço IP a um host específico, com base em seu endereço MAC.
  • Informar o nome do domínio DNS e o nome do host
  • Informar os endereços de uma ou mais impressoras
  • Indicar um arquivo de boot a ser usado pelo host
  • ...e muitas outras opções !


O uso de um servidor DHCP completamente funcional demanda um programa especial a ser executado em um computador. O software ISC DHCP Server oferece todas as opções DHCP, além de ser altamente configurável. Ele pode ser instalado e executado em um computador com sistemas operacionais Linux, BSD, Solaris, entre outros da família Unix. Esse servidor DHCP é configurado por meio de um arquivo de configuração, cuja localização depende de como o software foi instalado. Em sistemas Ubuntu, em que o servidor DHCP pode ser instalado a partir de um pacote de software chamado isc-dhcp-server, esse arquivo está em /etc/dhcp/dhcpd.conf. Um exemplo simples desse arquivo está a seguir:

# tempos de concessão, em segundos
default-lease-time 600;
max-lease-time 7200;

# Algumas opções de uso comum
option subnet-mask 255.255.255.0;
option broadcast-address 192.168.1.255;
option routers 192.168.1.1;
option domain-name-servers 191.36.8.2, 191.36.8.3;
option domain-name "sj.ifsc.edu.br";

# subrede 192.168.1.0/24 com duas faixas de endereços a serem concedidos:
# 192.168.1.100 a 192.168.1.150
# 192.168.1.190 a 192.168.1.240

subnet 192.168.1.0 netmask 255.255.255.0 {
   range 192.168.1.100 192.168.2.150;
   range 192.168.1.190 192.168.2.240;
}

Atividades

Realizar este conjunto de experimentos.


Aula 08

Acesso Remoto com SSH Aula 07 - ssh

  • apt-get install openssh-server

Configurações no arquivo

  • /etc/ssh/sshd_config
  • AllowUsers alunos
  • PermitRootLogin yes

Ativar e desativar servidor

  • /etc/init.d/ssh stop
  • /etc/init.d/ssh start

Cliente SSH

  • apt-get install openssh-client


Aula 09 Projeto

Implante a rede a seguir de acordo com os seguintes requisitos:

  • Todos os computadores (PC's) devem se comunicar com a internet;
  • Os computadores terão ip's fixos, exceto o PC1 que esta na rede do servidor DHCP;
  • Realize acesso aos arquivos compartilhados, e a computadores remotos.

Aval.jpg

Aula 10 Introdução ao IPV6

Texto extraído do livro Laboratório de IPv6:

Considerando que a concepção da Internet data da década de 70 e que, de lá para cá, houve uma explosão inesperada do seu uso, o IPv4 mostrou-se inadequado para acompanhar esta evolução.Uma das deficiências mais apontadas do IPv4 foi o espaço de endereçamento baseado num valor inteiro de 32 bits, que é tipicamente representado por quatro octetos em decimal, sendo possível disponibilizar apenas 4.294.967.296 endereços IPV4 diferentes. Para contornar essa deficiência, inúmeras soluções paliativas foram propostas e adotadas, como por exemplo o NAT (Network Address Solution) e o CIDR (Classless InterDomain Routing). Contudo, à medida que novas tecnologias de redes surgiram e o IP continuava sendo um dos protocolos chaves para sua operação, outras deficiências começaram a ser detectadas, especialmente aquelas referentes à segurança e ao suporte a parâmetros de QoS (Quality of Service) e mobilidade. Como consequência, no inicio da década de 90 é publicada a proposta da nova geração do IP (IPng – IP next generation) ou IPv6. Este novo protocolo traz a solução para muitas das deficiências de seu predecessor, o IPv4, incluindo espaço de endereçamento de 128 bits gerando a possibilidade de 340.282.366.920.938.463.463.374.607.431.768.211.456 endereços disponíveis, suporte a roteamento e segmentação de pacotes na estação origem, suporte a mobilidade e mecanismos de segurança.


Endereço IPV6

Um endereço IPV6 possui 128 bits disponíveis para endereçar hosts, possibilitando 340 undecilhões de endereços possíveis. Para se ter uma ideia do que isto representa, se convertêssemos cada IPv6 possível em um cm2, poderíamos envolver toda a superfície do planeta Terra com 7 camadas de endereços..

End1.png

Tipos de Endereços IPV6


O IPV6 possui categorias de endereços, conforme a tabela a seguir:

Tipos de end ipv6.png

  • Endereços Anycast: Um endereço IPv6 anycast é utilizado para identificar um grupo de interfaces, porém, com a propriedade de que um pacote enviado a um endereço anycast é encaminhado apenas a interface do grupo mais próxima da origem do pacote. Os endereços anycast são atribuídos a partir da faixa de endereços unicast e não há diferenças sintáticas entre eles.
  • Endereços Loopback: Endereços aplicados as interfaces loopback dos host; (Verificar com ifconfig)
  • Endereços Link local: Podem ser utilizados apenas no enlace específico onde a interface está conectada, sendo assim não é roteável;
  • Endereços Unique local address Endereço com grande probabilidade de ser globalmente único, utilizado apenas para comunicações locais, geralmente dentro de um mesmo enlace ou conjunto de enlaces. Um endereço ULA não deve ser roteável na Internet global;
  • Endereços Multicast: Endereços multicast são utilizados para identificar grupos de interfaces, sendo que cada interface pode pertencer a mais de um grupo. Os pacotes enviados para esses endereço são entregues a todos as interfaces que compõe o grupo;
  • Endereços Global unicast: Equivalente aos endereços públicos IPv4, o endereço global unicast é globalmente roteável e acessível na Internet IPv6.

Endereços Unicast

Lla.png

Link Local pode ser usado apenas no enlace específico onde a interface está conectada, o endereço link local é atribuído automaticamente utilizando o prefixo FE80::/64. Os 64 bits reservados para a identificação da interface são configurados utilizando o formato IEEE EUI-64. Vale ressaltar que os roteadores não devem encaminhar para outros enlaces, pacotes que possuam como origem ou destino um endereço link-local.


Global unicast.png

Atualmente, está reservada para atribuição de endereços a faixa 2000::/3 (001), ou seja, 3 primeiros bits utilizados para registros da faixa 2000. Equivalente aos endereços públicos IPv4, o endereço global unicast é globalmente roteável e acessível na Internet IPv6. Ele é constituído por três partes: o prefixo de roteamento global, utilizado para identificar o tamanho do bloco atribuído a uma rede; a identificação da sub-rede, utilizada para identificar um enlace em uma rede; e a identificação da interface, que deve identificar de forma única uma interface dentro de um enlace.Sua estrutura foi projetada para utilizar os 64 bits mais a esquerda para identificação da rede e os 64 bits mais a direita para identificação da interface.

Endereço Multicast

Multcast.png

O IPV6 não possui endereço broadcast, e sim multicast. Endereços multicast são utilizados para identificar grupos de interfaces, sendo que cada interface pode pertencer a mais de um grupo. Os pacotes enviados para esses endereço são entregues a todos as interfaces que compõe o grupo. Seu funcionamento é similar ao do broadcast, dado que um único pacote é enviado a vários hosts, diferenciando-se apenas pelo fato de que no broadcast o pacote é enviado a todos os hosts da rede, sem exceção, enquanto que no multicast apenas um grupo de hosts receberá esse pacote.

Cabeçalho IPV6

Header ipv6.png

O cabeçalho IPv6 possui menos informações quando comparado ao cabeçalho do IPv4. Várias informações foram removidas do cabeçalho IPV6, como o checksum considerada uma informação desnecessária já que o controle de erro é atribuído as camadas inferiores. Os campos presentes no cabeçalho IPV6 são definidos a seguir:

  • Class of traffic: define a classe de serviço a que o pacote pertence, permitindo assim dar diferentes prioridades a pacotes dependendo da exigência de cada aplicação. Permite o controle da qualidade de serviço (QoS) na rede.
  • Flow Label: Direcinado para aplicações que precisam de desempenho;
  • Payload Length: Tamanho dos dados em bytes que pacote transporta.
  • Next Header: aponta para o pŕoximo cabeçalho.
  • Hop: Número máximo de saltos, número de roteadores no caminho, da origem ao destino do datagrama que deve ser percorrido antes do datagrama ser descartado. Semelhante ao TTL do IPv4.

Header ipv4.png

Atividade