Primeiras aulas do curso Certificação Linux LPI Essentials parte 11: Your Computer on the Network

Certificação Linux LPI Essentials parte 11: Your Computer on the Network

Endereço IP, ping e dig - IPv4, ping e dig

Vamos para mais uma parte, onde vamos nos preparar para a cerificação do LPI Essentials. Nessa parte vamos falar sobre o seu computador na rede. Cuidado, quando falamos “rede” não estamos falando necessariamente da internet, você só vai estar conectado à internet se a sua rede está conectada à internet.

Na prática, no dia-a-dia, a maior parte das redes eu acessamos hoje em dia estão conectadas na internet, mas ainda existem redes internas de empresas, do governo, etc. que não estão conectadas na internet, elas funcionam só dentro daquela rede de computadores. Os conceitos são basicamente os mesmos, então vamos falar sobre eles.

Então a primeira coisa que eu queria falar, apesar da ordem da prova cobrar algumas coisas dessa lista, a ordem que vou falar é um pouco diferente da ordem apresentada, mas são todos esses tópicos. Então o que eu queria mostrar para vocês, primeiro, é algo que já comentei no passado, quando eu falei sobre utilizações do sistema operacional Linux, onde ele é usado no dia-a-dia, bastante utilizado até.

Um caso bastante comum é quando acessamos “www.alura.com.br”. Quando eu digito “www.alura.com.br” eu estou acessando um site, esse site é um conjunto de arquivos e programas que estão em algum computador em algum canto do mundo. Hoje, esse site está nos servidores do Google App Engine, nos Estados Unidos, e é isso que estou acessando.

O que está acontecendo? Como eu, Guilherme, no meu computador – eu tenho um computador na minha frente -, como eles sabem, quando eu digito “www.alura.com.br” que é para acessar um site que está em um computador dentro de um centro de computadores do Google nos Estados Unidos, e não em um computador dentro da Alura, não em um computador que está no Japão e não esse próprio computador?

Como ele sabe que isso indica um computador específico? Então caímos em um primeiro problema de todos, que é: precisamos dar nome às coisas. Se você fala “legal Guilherme, você deu o nome de “Alura” para esse computador, nos Estados Unidos”, tudo bem, mas o que adianta eu dar o nome de “Alura” para esse computador nos Estados Unidos e ninguém ficar sabendo disso? Não adianta nada.

Do que adianta ter um filho – olhe meu filho que bonitinho -, eu dou um nome para ele e não anuncio para ninguém, como é que as pessoas vão saber o nome do meu filho? Como é que o governo vai saber que meu filho nasceu, que ele existe e que o nome dele é tal?

Então precisamos anunciar o nome para todo mundo, quer dizer, eu preciso, em algum lugar, registar o nome do meu filho, registar o nome do meu computador, desse computador que estou gravando, desse computador de ajuda que eu uso para o meu roteiro, etc.

Então eu preciso colocar em algum lugar os nomes, eu preciso registrar os meus nomes. É extremamente importante, senão não tem como encontrar. Se você falar “cadê aquele rapaz moreno, de olho cor castanho claro, de camiseta vermelha?”, não, você quer saber o Guilherme, então você precisa ter algum lugar onde você tem o registro que esta máquina tem tal nome, essa outra máquina tem tal nome.

Então o que acontece? Primeiro, para identificar todas essas maquinas, vamos precisar dar um nome bem simples para elas. Qual é o nome mais simples? Usar o alfabeto da língua portuguesa?

Um nome bem razoável, vou usar o alfabeto da língua portuguesa. Só que quem está no Japão vai sofrer, porque eles usam o alfabeto japonês, eles têm até mais de um alfabeto; quem está na Coreia também vai sofrer, porque é outro alfabeto; quem está na Rússia é outro alfabeto, até mesmo que está na Alemanha é outro alfabeto, não é exatamente o nosso alfabeto, tem outros caracteres.

Então calma, e cada língua usa alfabetos distintos, fica difícil de identificarmos todos esses computadores com um alfabeto único. Então como vou fazer para identificar o meu computador? Vou identificar de uma maneira mais simples, como números. Então vou dar um número para esse computador, esse é o computador “1”, e vou dar um número para esse outro computador, que é o que eu estou gravando, esse o computador “2”.

Foi uma boa sacada? Razoavelmente sim, mas podemos concordar que todo mundo no mundo vai usar os números de alguma maneira, podemos ter representações diferentes, mas temos os números “1, 2, 3, 4, 5”, “0”, inclusive, etc.

Então foi encontrado um padrão de números para identificar máquinas, máquinas vão ser identificadas através de um padrão de números. O padrão que é bastante utilizado, ainda hoje em dia, é o IPV4. Então vamos no Wikipedia o “IPV4”, “Wikipedia IPV4”. Então quando usamos esse padrão, o que vamos ter vai ser uma série de 4 números. O IPV4 são 4 números. Cuidado os números “4” que estou falando, mas o IPV4 são “4” números.

Então um exemplo de um IP de um número para identificar um computador na minha rede é esse “172.16.254.1”. São 4 números seguidos, cada um desses números tem um valor entre 0 e 255, então eu tenho de 0 a 255 em cada; por quê? Porque, na verdade, cada um desses números são 8 bits, é um byte.

Então a representação do identificador de um número, usando o IPV4, são o quê? 32 bytes. Temos um byte em cada. Cada um desses são 8 bits, 01. Não precisamos nos preocupar sobre os detalhes de transformar número binário em número decimal, hexadecimal, etc. não é nossa preocupação.

O único detalhe que eu queria mostrar para vocês é que quando você já viu, algum dia, essa sequencia de 4 números aparecendo, era isso, era um identificador de algum computador, de algum dispositivo na sua rede, e ele vai ter esse número, essa sequência de 4 números que estamos utilizando, IPV4.

Tem outros exemplos, no Wikipedia ele vai citar outros exemplos em outras situações, por exemplo, “192.0.2.235”, e ele vai citando diversos outros IPs. Se você procurar ele vai dar diversos outros exemplos, inclusive alguns exemplos que são reservados, que são importantes para um mundo de rede. Não é o nosso foco neste instante, nosso foco é entender o que é esse tal do IPV4.

IPV4 então é quem define como podemos dar um nome numérico para todos os dispositivos na nossa rede. É na nossa internet ou, não é? Não importa, é em uma rede de computadores, vários computadores conectados com um cabo de rede ou via wi-fi. Então eles estão pegando esses números, cada um tem o seu próprio número.

Quando eu quero me comunicar com um desses computadores, por exemplo, eu quero acessar um site que está em um desses computadores, o que eu faço? Só digitar o número na barra de pesquisa, por exemplo, “63.38.37.68”. Então estou tentando acessar esse computador, estou tentando acessar o site que está nesse computador.

Daí você fala “Guilherme, você está roubando, porque você falou que os computadores vão ter um número para identificar eles”, quando você quer acessar esse computador você digita esse número; que número? Vai depender do padrão que você adotou, padrão IPV4 – mais adotado hoje em dia no mundo – define esses 4 números, de 0 a 255.

Só que na hora que você foi acessar, você acessou “www.alura.com.br”, você acessou “en.wikipedia.org”, você acessou “www.lpi.org”, você não acessou “64.38.37.68”. É verdade, eu não acessei; por que não? Voltamos para o caso de identificar pessoas no mundo: quando você quer ligar para alguém, é mais fácil você lembrar do nome da pessoa ou do número de telefone da pessoa?

O número de telefone da pessoa identifica aquela pessoa, as vezes no grupo familiar, só que é mais fácil lembrarmos o nome do que lembrarmos o número. É mais fácil eu lembrar; qual é o nome da empresa que estou trabalhando mesmo? É o Alura. Qual é o número do telefone dela? Complica. Qual é o CEP dela? Complica.

Então por mais que o número seja genial, por que ele é uma padronização de como vamos identificar os dispositivos numa rede, ele é meio complicado no momento de decorar esses números. E pior ainda, o que acontece quando a pessoa troca o seu celular e troca o número de telefone dela? Todo mundo que tinha aquele número de telefone antigo – se o número de telefone mudar – se dá mal, porque não consegue mais falar com aquela pessoa.

Um problema extremamente comum no passado, hoje em dia existe a portabilidade entre as operadoras e se consegue manter um número por mais tempo. Mas toda vez que trocamos o nosso número nos damos mal, a mesma coisa então se eu tenho uma máquina que está rodando o servidor do Alura, se de repente eu troco para outra máquina e essa outra máquina tem outro número, me dei mal, todo mundo que acessava o Alura não acessa mais.

Então é muito perigoso fazer com que as pessoas acessem pelo número, perigoso no sentido de que é muito frágil, muito sensível à mudança e a qualquer coisa que acontecer nesse caminho. Óbvio, temos que evitar ao máximo ficar mudando aleatoriamente, a não ser que faça sentido lógico.

Então os computadores têm um número, mas ao invés de usar um número eu criei um apelido, criei um nome. Para fazer isso o que fazemos? De novo, vamos voltar ao mundo real. O que fazemos? Temos uma agenda telefônica no celular. Antes, nossos pais, tios primos, etc. o que eles tinham? Uma agenda telefônica no papel, agora temos uma agenda telefônica no computador, no celular; que tem o quê? Tem o nome e o telefone.

Então qual foi a sacada que o pessoal fez? Da mesma maneira que no mundo real: no mundo real quando o seu filho nasce você tem que registra-lo no cartório. Quando você tem uma máquina nova, você vai registar esse número, esse IP da sua máquina, em algum lugar. E se você quiser ter um apelido para essa máquina você vai ter que registrar isso em algum lugar.

Então se eu quiser ter um apelido, por exemplo, “www.alura.com.br”, eu tenho que registrar esse meu apelido para esse número em algum registro central. O nome desse registro é Domain Name server, ele é o servidor de nomes de domínio. Domínio é isso: “www.alura.com.br”, “Google.com”, etc., resumindo, não é o foco nosso no curso.

O servidor DMS é quem tem esse catálogo, esse super catálogo. Então o servidor DMS tem um super catálogo, onde você pergunta para ele “www.alura.com.br”, e ele devolve um número, você vai para esse número e busca as informações, que nem você faz com o telefone.

Como você faz quando você quer ligar para alguém? Você fala “qual é o telefone do Guilherme”, então você encontra o telefone do Guilherme e você disca para o Guilherme, para o número do Guilherme e não para o nome do Guilherme. Então existe, também, um registro, na verdade, diversos registros, que tem esses registros desses nomes: “www.alura.com.br” é tal registro de IP, outro site é outro número.

Então, se eu quiser, eu posso me comunicar com essas máquinas. Quando eu me comunico via HTTP ou HTTPs, que é a maneira segura, eu estou fazendo o quê? Estou usando um protocolo, uma maneira de me comunicar, um protocolo chamado HTTP ou HTTPs, para me comunicar com essa máquina. Se essa máquina tem um servidor rodando web, que responde por HTTP ou HTTPs, ele funciona e reponde para a gente.

Por exemplo, vou falar um que não existe, “https://guilherme.alura.com.br” não existe. Se eu tento acessar não encontra, por quê? Porque ele procura esse nome no servidor DMS, ele procura qual é o número do “https://guilherme.alura.com.br”. Não achou. Não tem esse nome. Agora se tiver, ele vai me devolver um número e eu vou acessar. Viu como foi rápido? Então esse o papel do DMS Server, esse servidor que transforma essa palavra em um número.

Então podemos testar, no Linux, de diversas maneiras um DMS Server, para saber qual é o número dessa minha máquina, desse domínio. Não significa que “www.alura.com.br” é uma única máquina, eu posso ter várias máquinas por trás, com diversas loucuras.

O importante é que quando eu acesso “www.alura.com.br”, eu estou acessando um dispositivo que é uma primeira máquina e, o que eu tenho por trás dessa máquina, é responsabilidade desses caras, não minha. A minha responsabilidade é: quero me comunicar com essa máquina.

O servidor da DMS vai me devolver um IP, se estou usando o IPV4 é aquela série de 4 números, e vou pedir para essa série de 4 números, para quem está lá, uma página. Se ele me devolver uma página, como ele fez para fazer isso, que linguagem de programação, quantos computadores, banco de dados é local ou remoto, se está no Brasil ou no Japão, essas coisas são outras histórias, algumas que vamos abordar também.

Vou mostrar para vocês algumas ferramentas do terminal do Linux que vão ajudar o nosso dia-a-dia, a primeira ferramenta que eu quero mostrar é uma que mostra para a gente o que está acontecendo quando ele está buscando a informação no nosso servidor DMS, sobre um domínio que estou buscando algo. Estou perguntando para ele “cava e me dá as informações dig www.alura.com.br”.

Então ele traz para mim algumas informações que ele trouxe, que conseguiu desse domínio, entre elas, ele descobre qual é o IP que vou ter que acessar, “64.233.190.121”. Como eu testo se esse realmente é o IP do Alura? Posso digitar esse número, “64.233.190.121”? Não necessariamente. Repare, o Google está reclamando, por quê? Lembra que eu falei para vocês que isso está nos servidores do Google.

O Google tem várias máquinas, e uma marca do Google responde por vários domínios, não só um, então ele responde o “www.alura.com.br” de diversos outros domínios, de outras pessoas. O mesmo IP está respondendo por diversos domínios, de acordo com o domínio, ele joga para algumas máquinas. Como ele faz isso, lá atras, eu não estou ligando, não é o foco do nosso curso e do que precisamos conhecer na nossa certificação.

O que precisamos saber é que existe um servidor de DMS, ele faz a tradução para a gente do nosso domínio para um IP. Se eu quisesse, eu poderia testar se eu consigo alcançar essa máquina. Será que eu consigo alcançar essa máquina? Para isso podemos fazer um ping. Ping é quando tentamos pingar, tentamos só dar um toque, falar “você está aí?” e ele responde “estou sim”. Vamos testar para ver se ele está lá ou não está?

Qual era o IP mesmo? Era “64.233.190,121”. Eu tento o ping e ele fala que está conseguindo. Ele manda um ping - cada um desses é um ping que ele está mandando -, uma informação que ele está mandando para essa máquina, “64.233.190,121”.

Toda vez que ele manda, ele recebe que demorou “52,2 ms”. Repare que demorou 50 milissegundos só para receber uma resposta do tipo “ok”. Não é que eu acessei um site, acessei coisas e fiz milhares de coisas por trás. Não, 50 milissegundos é só para dizer “ok”.

Vamos tentar então acessar uma outra máquina, vou pegar uma máquina, por exemplo, coreana. Eu sei que tenho lá um IP, que é o dig www.naver.co.kr. Esse IP “202.179.177.22” e “125.209.222.141”. Tenho esses dois IPs, vamos tentar acessá-los.

Vou tentar acessar o ping “125.209.222.141”, vamos ver o que acontece. Vamos tentar o outro, ping 202.179.177.22. Não está indo. Repare que está indo e eu tenho que dar um “ctrl + C” para ele parar. Não está dando certo. Esse primeiro tinha demorado 7 segundos e eu não tinha recebido resposta. Vou dar um “ctrl + C”. Também, demorou 12 segundos e não conseguiu receber resposta.

E se eu desse um ping direto? Assim ping www.naver.co.kr. Ele tem que transformar esse número, ele já pingou o servidor de DMS, pegou o servidor de DMS “125.209.222.142”, e nada. Por que acontece isso? Por que a minha máquina do Google respondeu o ping e a máquina do Naver que é o Google coreano não respondeu?

Então é importante sabermos que nem sempre o ping vai funcionar, e isso não significa que a sua rede está desconectada ou que o servidor de lá não está rodando. Pode ser, simplesmente, que o servidor de lá não tem o ping, não está suportando o ping. Pode ser só isso.

Então você tem que tomar esse cuidado, as vezes está suportando o ping e as vezes não, você tem alguém no meio que bloqueia o ping. Se alguém bloqueia o ping, você fica sem saber. Depende de quem está no meio, entre você e o computador final, se o computador final vai estar liberado para dizer para você que está “ok” ou não. Se tiver alguém no meio cortando, já era, você fica sem saber.

Então algum computador pode não suportar um ping por que você tem um caminho longo de ida e de volta, nesse caminho você passa por tantos computadores eu você não sabe direito o que está acontecendo. Talvez alguém nesse caminho esteja bloqueando.

Em geral, que vai bloquear é: alguém na rede da minha empresa ou alguém na rede da empresa deles, um dos dois está bloqueando. Em geral é uma das duas coisas que bloqueiam, sites, domínios, IPs, etc.

Então o ping é uma ferramenta para descobrirmos se estamos conseguindo acessar um site, mas nem sempre ele vai funcionar da maneira que gostaríamos. Então tenha certeza de que se você consegue conectar numa outra rede e está funcionando o ping, e nessa rede não está funcionando o ping, tem alguma coisa de errado nessa minha rede. Se eu testo no meu celular e está no 3G, o ping funcionou, testo no meu computador e o ping não funcionou, tem algum problema.

O dig nos mostra essa transformação do servidor, do nome do domínio, passando pelo DMS Server e um IP. O ping, nós podemos passar tanto um IP especifico quanto um nome do nosso domínio, que ele mesmo fará a tradução para a gente.

Além disso, vamos falar um pouco mais sobre DMS, servidores de DMS, sobre o IPV6, não o IPV4 e alguns outros arquivos. Então vamos lá.

Introdução ao IPv6 - O IPv6

Tudo bem pessoal? Vimos que com o IPV4 podemos dar um número para cada computador e cada computador se identifica com esse número. Podemos ter servidores de DMS, na internet, que são como agendas telefônicas, você pergunta para ele um nome e ele te dá um número, então você acessa esse número depois.

Se você parar para pensar, tem alguns problemas. O primeiro problema que eu queria citar é a quantidade de números diferentes que existem. Se eu estou usando o IPV4, vocês lembram do IPV4? Nós temos de 0 a 255 no primeiro número, são 256 números possíveis, depois, de novo 3 vezes, isso é, você pode ter 4 bilhões de IPs diferentes.

Então se eu estou em uma rede chamada internet e, cada um dos dispositivos conectados à internet, tiver um IP próprio, o máximo de dispositivos que eu posso ter conectados diretamente é 4.294.967.296, menos do que isso.

Então quer dizer que, se eu tenho uma rede qualquer, um número de dispositivos máximo conectados a essa minha rede é 4 bilhões, se eu estou usando IPV4. Esse número 4.294.967.296, que é 2³² se eu não me engano. Esse é o limite do espaço de endereços que você pode colocar de IPs.

É um número que quando você fala “4 bilhões” parece ser muitos dispositivos conectados na mesma rede. É verdade. Só que cada vez mais você tem celulares, cada vez mais você tem mais gente usando coisas, cada vez mais você tem mais dispositivos que não são celulares, não são computadores, não são tablets, conectados diretamente na internet, com IP próprio.

Então se eles estão com um IP próprio dessa rede maior, eles estão tomando esse espaço, e uma hora isso vai estourar, claramente. O número de IPs que temos e limitado, esse número de dispositivos cresce muito rápido, 4 bilhões uma hora vai estourar.

Pensando nisso, a galera desenvolveu o IPV6, na década de 90, que está no comércio desde 2006, só que ele ainda não é o padrão mais adotado. Ainda hoje, o padrão mais adotado é o IPV4.

Qual a diferença do IPV6 para o IPV4? Tem diversas características diferentes. Não é só a quantidade de endereços disponíveis, ele tem outras espertezas, outras sacadas para otimizar esse descobrimento de IP e essas coisas. Mas eu vou focar, principalmente, agora vou citar para vocês, essa diferença do tamanho de endereços que podemos ter.

Repare que no IPV6 nós podemos ter até 2¹²⁸, não são mais 32 bits, são 128 bits. Isso dá um quintilhão, seja lá que número for um quintilhão, não tenho nem ideia. Mas dá um número muito grande, 3.4 x 10³⁸. Põe 38 zeros, é isso: 3.4, vou colocar 34 com 37 zeros. É esse número de dispositivos que você vai pode ter em uma única rede, com IPs únicos para cada um deles.

Se um desses computadores tem, na verdade, 5 computadores ali atrás, mas só está mostrando para você um único IP, então você pode ter ainda mais. Então repare que você pode ter um número muito grande de endereços, uma primeira característica do IPV6. O IPV6 serve para fazer isso, uma primeira sacada, ele permite que você tenha um número de endereços muito maior.

Ele cita, no Wikipédia, como esse endereço é montado. Ao invés de ser montado com números, como já estamos acostumados, na base decimal, ele é na base hexadecimal. Então são 6 conjuntos, invés de 4 conjuntos, por isso IPV6. Lembra que eu falei do 4 4? Importante. IPV6, então são 6. Então são 6 de 0 a 255? Não. Agora é hexadecimal e não quer dizer necessariamente a mesma coisa.

Repare que eu tenho cada um desses hexadecimais com valores muito maiores que 256, principalmente porque isso está na base hexadecimal. Então, por exemplo, “fe01”, qual é o valor disso? Tem que transformar “fe01” de hexadecimal, em base decimal. Então vamos tentar transformar: “fe01 em decimal”. Vamos ver se o Google já faz para a gente. Hex Dictionary. Ele já transformou para a gente, é esse número decimal “65025”. Então o “fe01” é 65025.

Vamos tentar um outro? “FFFF”. “FFFF” é “65535”. Então o máximo no hexadecimal, que seria “FFFF” – não estou dizendo de casos reservados que podemos ter nos IPs – seria “65535” para cada um dos 6. Então “655356553565535” e agora vezes esse número de novo, porque é vezes 6 vezes. Olha que número gigante. Vai dar aquele número que tínhamos visto antes.

Então em hexadecimal são seis casas que vão de 0000 até FFFF. Esse seria o nosso caso. Essa é a representação que vamos ter dos nossos IPs agora.

Sendo assim, quando o pessoal desenvolveu o IPV6, eles não falaram “somente vamos mudar para agora você ter 6 coisas ao invés de 4, ao invés número você ter coisas”, não é só isso, ele implementa diversas outras mudanças na maneira que os pacotes são transferidos de um lado para o outro entre as máquinas. Você tem um pouco de dados? Me dá esses dados. Eu monto um pacote e envio para o outro lado.

Como isso é feito, isso tudo, como ele é feito e conferido, todo esse processo vai depender desse IPV4 e do IPV6, e eles são não intercompatíveis por padrão. Então quer dizer, se eu tenho uma rede com IPV6 e tenho uma outra rede com IPV4, para essas duas redes se comunicarem, eu vou precisar instalar alguém, que faça a comunicação entre elas.

Não é por padrão: eu tenho um computador nessa rede que suporta IPV6 e esse outro na mesma rede, com IPV4 e esses dois se comunicam. Não. Por padrão, vou precisar de alguma coisa para permitir que duas redes, uma rede com IPV6 e uma rede com IPV4 se comuniquem.

Então daí surgiu a necessidade do IPV6, entre outros problemas que foram sendo resolvidos na base da comunicação da rede. A prova cobra de a gente saber o mínimo sobre IPV6 e IPV4. Eu queria contar para vocês sobre esse caminho que está acontecendo do IPV4 para o IPV6, estamos em andamento.

Então conseguimos saber que temos, agora, um espaço de endereços muito maior disponível para nossos dispositivos, dentro de uma única rede, além de diversas outras otimizações de como é feito o tráfego desses pacotes na nossa rede. Esse é o IPV6. Agora que sabemos que no dia-a-dia estamos utilizando o IPV4 e que temos o IPV6, dois que são pontos citados na prova, eu queria ver com vocês alguns outros comandos.

Ifconfig, redes e internet - Ifconfig, redes e internet

Tudo bem pessoal? O que vamos falar agora é um pouco mais sobre a estrutura de que eu tenho vários computadores conectados em uma rede. Então vamos pensar primeiro nessa rede que eu tenho nesse local.

Nesse local eu tenho alguns computadores, tenho, por exemplo, o computador que estou utilizando agora para gravar, tenho também o notebook que utilizo de suporte. No outro estúdio do lado tem mais dois computadores, da mesma maneira, um notebook de suporte e um computador que utilizamos para gravar. Eu tenho também um roteador, que também é um dispositivo que está conectado na rede, ele que é minha ponte com a internet.

Vamos pensar primeiro só nesses computadores, ignorando a internet lá fora, depois adicionamos a internet e o mundo para a gente. Então vamos dar uma olhada no Google Maps, rapidamente. O prédio onde está este estúdio do Alura está nesse quarteirão.

Então o que eu estou fazendo é, estou tentando descrever para vocês o que eu tenho nessa rede. Nessa rede eu tenho – vou desenhar bem bonito um retângulo – que é o meu computador atual, esse computador que estou utilizando para gravar, o computador de gravação. Esse é o meu computador de gravação, qual é o IP desse computador? Vamos dar uma olhada?

Vou no meu terminal do meu Mac, que é um Linux. Nesse sentido, como ele é um Linux, ele tem um programa que diz qual é o meu IP. O programa que eu uso para fazer isso é o “ifconfig”. Muito cuidado, não é o “ipconfig”, o que queremos é o “ifconfig”. No Windows nós temos o “ipconfig”, que funciona de maneira parecida com o “ifconfig” do Linux, mas usamos o “ifconfig”, cuidado com a pegadinha.

Ele traz, para mim, diversas informações sobre cada um dos dispositivos de rede que eu tenho no meu computador, tenho vários dispositivos de rede disponíveis no meu computador. Entre eles eu tenho o “ethernet”, do cabo de rede, aquele cabo que costuma ser azul. Então a minha rede está conectada nesse computador.

Se você der uma olhada nesse “en0”, que é esse “ethernet”, eu tenho nele o meu IP. O meu IP é “192.168.1.33”, vou anotar. Não coube, vou clicar no “+”. Agora coube. Esse é o meu computador de gravação. Deixe-me ver agora esse meu outro computador. Vou dar um “ifconfig”, vou procurar o meu IP, “192.168.1.32”.

Então eu tenho um outro computador, além do meu computador de gravação. Esse meu outro computador é o computador de apoio. Vou chama-lo de “computador de apoio”, para ficar bonito. O IP dele é “192.168.1.32”.

Eu tenho mais dois computadores na minha outra sala; vamos pegar esses computadores? Vou chamar esse primeiro de “computador de gravação 1” e “computador de apoio 1”. Eu tenho o computador de gravação 2 e o computador de apoio 2, que estão na outra sala; vamos fazer eles? Vou fazer.

Então “computador de gravação 2” e eu tenho também o “computador de apoio 2”. Vou colocar agora o IP desses dois computadores. O IP desses dois computadores é “192.168.1.34”, e esse outro, advinha o que pegou? “192.168.1.35”. Esses são os IPs desses 4 computadores.

Então eles estão conectados em uma mesma rede e o que eles fazem é: eles se comunicam através do IP deles. Se eu quiser fazer alguma coisa – estou no meu computador de gravação e quero acessar esse computador de apoio que está do meu lado – eu vou usar esse IP para identifica-lo. Se eu quero usar alguma coisa desse outro computador, eu vou usar esse IP; se eu quero acessar alguma coisa desse outro computador, vou usar esse IP.

Então cada computador tem o seu IP. Como fazemos para definir o IP dessas máquinas? Tem diversas maneiras. Uma maneira é a própria máquina falar “eu sou esse IP e ponto final”, que é uma técnica utilizada em situações bem específicas. Nas redes mais comuns que abrimos dentro de casa, no trabalho, com algumas máquinas, etc., é muito mais comum que esses IPs sejam dinâmicos, eles não sejam fixos.

Se eu desligo a minha máquina e ligo ela de novo, talvez o IP dela, agora, seja “192.168.1.38”, por exemplo. Então ela não tem um IP fixo, que toda vez que eu ligo aquela máquina ela fala que quer aquele IP e ponto final, ou alguém dá aquele IP, exatamente o mesmo, para ela. Então cada vez ele vai mudando.

Só que para controlar isso de alguém dar esse IP, temos um servidor que controla e fala “olha, o teu IP agora é esse” e na hora que você liga uma máquina nova, pergunta para ele, ele fala “seu IP agora é esse”, te dá um IP novo.

Então quem faz isso é o que chamamos de “servidor dhcp”. Esse servidor dhcp é um aparelho que eu tenho do lado de fora, um aparelho fechado; que faz o quê? Ele que faz esse papel de dar os IPs para cada computador. Então conectamos todos os cabos nele. Tem um cabo em cada computador. Então vamos colocar os cabos.

Eu coloco os cabos em “Formas”. Então eu tenho esse primeiro representado, tenho uma outra forma e uma outra seta para esse segundo. Uma outra forma e outra seta par esse terceiro, e uma outra forma e outra seta para este quarto. Conectei os cabos, o que acontece? Na hora que e ligo o computador. Então observe: desliguei o computador, na hora que eu ligo, esse servidor dhcp é quem vai definir o meu IP, esse é o processo tradicional.

Nessa primeira prova não precisamos nos preocupar tanto com isso: como funciona o servidor dhcp, etc., não é o foco da nossa prova, ele não cita “conhecer servidores dhcp”. É um uso comum para o Linux, você poderia ter uma máquina especifica que é um servidor dhcp.

Aquele equipamento, que vulgarmente costumamos chamar de roteador, tem o servidor dhcp que está distribuindo os IPs para a gente, sem nos preocuparmos. Percebe o que seria legal do dhcp? Uma das características interessantes. Ele distribui os IPs. Nós só ligamos a máquina e estamos felizes e contentes, recebi um IP, consigo me comunicar na rede.

Então essa daqui é a situação da minha rede. Vou desenhar um retângulo só para vermos que essa representação é a minha rede local, do meu prédio, nesse meu andar, nesse meu escritório. Então o que eu tenho?

O meu escritório tem essa rede representada. Inclusive o servidor dhcp também tem o IP próprio dele. Se eu der uma olhada na configuração dele, a configuração dele é literalmente “192.168.1.1”, que é um padrão utilizado na maior parte dos hooters, que você vai utilizar. Ele vai vir com esse, as vezes vai vir “192.168.0.1”, as vezes são outros IPs. Tem definições e padrões para isso. Não precisamos nos preocupar com isso na prova.

Eu queria mostrar que, repare que eu tenho os meus IPs dentro dessa rede. Então você fala “beleza, quer dizer que dentro de uma rede eu vou ter os IPs – estou feliz e contente -, está tudo funcionando”.

Agora o que eu quero saber é: como eu faço para ter uma outra rede? Porque repare, Guilherme, que isso é verdade nesse prédio do Alura, mas o prédio da Caelum está do outro lado, está no outro quarteirão. E no prédio da Caelum você também tem uma rede, Guilherme. Estou sabendo que você tem uma rede lá. Tenho. Inclusive na minha casa eu também tenho uma rede, na casa dos meus pais eu também tenho uma rede, vários lugares tem redes.

Vamos ver então a rede da Caelum? Vou dar um exemplo da rede da Caelum. Vou pegar essa representação. Então essa representação é a minha rede principal do Alura, nesse prédio do Alura. Vou tentar diminuir, será que vai funcionar? Não funcionou. Vou tentar agrupar e, agora sim, diminuir.

Diminuiu todo mundo junto, só não ficou muito genial porque a fonte está muito grande. Então vou colocar essa representação para cima e vou diminuir a fonte, porque não está dando com essa fonte grande. Vamos pegar esses cinco retângulos, vou diminuir a fonte. Vou colocar a fonte “12”. Então dá para caber todo o texto que eu queria. Ficou pequeno a fonte, mas dá para ver que cada uma máquina tem o seu próprio IP.

O nosso servidor dhcp está conectado onde? Está conectado no nosso provedor. Tem alguém que você contrata, de internet. Temos essa contratação que, vulgarmente, chamamos de internet. Vou chamar de “‘internet’”.

Eu tenho um cabo, que contratei alguém para conectar. Ele trouxe esse cabo até a minha empresa, às vezes ele já até traz esse aparelho, ou as vezes eu mesmo tenho que colocar esse aparelho, mas a partir daqui eu entro com meus computadores. Então aqui é a minha internet, que na verdade é o meu provedor, e aí infinitos computadores na internet.

Vamos ver agora a rede da Caelum? Então vou pegar agora a rede Caelum. Repare que a rede da Caelum é uma rede própria. Então vou desenhar à mão a rede própria, a rede da Caelum. Fiz bem feio. E o que eu tenho dentro? Vários computadores, por exemplo, dentro da rede da Caelum, eu sei que tem 3 computadores ligados agora. Vou dar um copy paste nesses 3 computadores. Copiei e colei. Então tenho 3 computadores ligados na rede da Caelum.

Eu sei que eu tenho um computador, lá, que é um computador da rede interna de controle de alunos. Então eu tenho um servidor de alunos lá. Eu tenho o que mais? Eu tenho uma outra máquina que o Paulo que está trabalhando lá, agora. Então o computador do Paulo está conectado lá.

Eu tenho uma outra máquina que é o computador do Carlos, o computador do Carlos também está conectado lá. Claro, eu tenho, na rede da Caelum, um grande computador, um servidor dhcp, que está rodando na rede da Caelum. Vou puxar essa linha selecionada, para baixo.

O que acontece com a gente? Repare que esses computadores também estão conectados com cabo. O que acontece quando estou conectando o cabo nesses computadores? Quando eu conecto o cabo nesse computador do servidor de aluno, no servidor dhcp nosso, naquele nosso dispositivo, o que acontece? Esse servidor, que tem um IP, dá um IP para o meu servidor de aluno, por exemplo, “192.168.1.76”.

Quando eu conecto, também, o computador do Paulo. Conectou o computador do Paulo, o que acontece? Ele dá um IP para a gente também. Ele vai no Paulo e dá um IP, o IP vai ser “192.168.1.35”. Estão bem feias essas conexões que eu fiz.

Quando eu conecto o computador do Carlos. Então vamos conectar o computador do Carlos. Conectei o computador do Carlos. Ele também recebe um IP – estou feliz e contente –, e o IP que ele vai receber é “192.168.1.33”. Eles receberam IPs, esses computadores. Essas setas estão bem feias. Também estão conectados.

O que mais? Esses dispositivos também estão conectados no meu provedor, também tem um cabo de rede que chega da rua e entra na Caelum. Também tem isso na minha casa, na Caelum, nesse escritório, tem outro escritório. Eu tenho um provedor que, vulgarmente, chamamos de “internet”, e ele também está conectado. Então vamos conectar essa rede de baixo.

Então repare que, por mais que o IPV4 defina que os IPs seja um conjunto de 4 números, de 0 a 255, repare que eu posso ter IPs iguais em redes diferentes; por quê? Por que quando o computador do Paulo quer acessar o servidor de alunos, ele fala “quero acessar o computador ‘192.168.1.36’”, então ele procura nessa rede esse computador. E ele acha, ficando feliz e contente.

Como ele procura e como ele acha, vamos entrar em um pouco mais de detalhes, porque a prova vai exigir um pouco. Vamos entrar nesse detalhe.

Então ele encontra nessa rede e fica feliz e contente. Então se eu tivesse 2 computadores com o mesmo IP, nessa rede, não ia dar certo, porque ele iria falar “que loucura é essa? Tem dois computadores com o mesmo IP; qual dos dois é para responder por isso?”, e ele iria ficar doido. Por padrão, da maneira que estou descrevendo, ele ficaria doido.

Então, por padrão, dois computadores com o mesmo IP, na mesma rede, não fazem sentido. Porque eu estou com o computador do Paulo, quero acessar o computador “192.168.1.76”, ele procura nessa rede, encontra e fica feliz e contente.

Quem está no computador de apoio e quer acessar o computador de gravação. Então eu estou no computador de apoio e quero acessar o computador “192.168.1.33”, que computador é esse? É o computador da gravação 1, ou o computador do Carlos? Repare que é uma pergunta extremamente válida.

Isso se eu estou mostrando só a Caelum e o Alura, na minha casa eu também tenho uma rede, e advinha qual é o IP do computador da minha casa. “192.168.1.33”. E você tem uma rede na sua casa, qual será que é o IP da tua casa? “192.168.1” o quê? Ou seja lá o que for, não sei qual é o IP da sua casa e das redes das pessoas.

Então tem várias pessoas que têm esse IP igual, “192.168.1.33”. Então como eu faço para distinguir, quando eu sou o Paulo, que eu quero acessar esse computador selecionado, ou esse outro? Precisamos ter uma maneira de entender que as informações que o Paulo estava enviando, acessando, buscando, elas têm que fazer este caminho para chegar nesse computador, se ele quiser.

Agora, se ele quiser acessar o computador do Carlos, o caminho que ele tem que fazer é este outro. Precisamos de uma rota entre os computadores em uma rede. Então repare que se eu tenho só os computadores da Caelum, as rotas possíveis são trabalhadas dentro da rede da Caelum, mas no momento que entramos na internet, entramos com rotas muito mais complexas.

Então agora o caminho que eu posso fazer, do Paulo, até o computador e gravação 2, é esse assinalado. Então você fala “meio que eu só tenho um caminho”, meio que é verdade, só que esse retângulo que estou chamando de internet é extremamente complexo, tem um monte de computadores nele, tem um monte de centrais, semi-centrais, na verdade, distribuídos, etc. Eu tenho vários caminhos que eu posso fazer para chegar neste item.

Então onde eu estou chamando de internet, na verdade, eu posso ter o meu provedor – comprei o provedor A, vou chama-lo de “provedor A” -, pode ser a Vivo, a Tim, a Net, XPTO, não sei qual é o nome dos provedores que existem hoje em dia. E eu tenho o meu provedor B. Tenho provedor C, também, existe o provedor C; vamos colocar o provedor C? Tenho o “provedor C”.

Tenho todos esses itens que chamamos de “provedor”, que estão, de alguma maneira, suportando a minha conexão. Esses provedores são o que eu estou chamando de “internet B”, “internet A” e “internet C”, que vulgarmente chamamos de internet.

Então estou conectado na minha internet, que é o meu provedor. Estou conectado na Vivo Fibra. Esse “internet B” é o Tim Internet, e esse “internet C” é o Internet Net, ou alguma coisa do gênero, cada um tem os seus caras. Esses provedores também estão conectados entre si, o “internet A” está conectado com o “internet B, também com om “internet C”, e o “internet C” também está conectado com o “internet B”. Tem todas essas conexões.

É claro, essas conexões são ainda mais complexas, se você olhar por trás, esse tal de “internet A”, que é a Vivo, tem um monte de computadores dentro, todos interconectados, de alguma maneira; “Internet C” também, vários computadores conectados; “Internet B” também, vários computadores.

Repare que, a internet eu quebrei agora em vários pedaços que, na verdade, se eu der uma olhada dentro, são vários computadores. Agora entramos para a grande questão “Guilherme, como eu faço para o Paulo acessar o computador de apoio? Ou como eu faço para eu, agora, no meu computador de apoio, acessar o servidor de alunos? Qual é o caminho que, as informações que eu envio e que as informações que eu recebo, devem fazer por aqui?”.

Tem que ter uma rota para isso. E isso é extremamente importante quando pensamos em redes. A rota que vai ser feita, para quê? Para que, se eu estou acessando o computador “192.168.1.33”, eu saiba que é esse, e não aquele outro que está na rede da Caelum. Ou quando eu quero realmente acessar um computador da rede da Caelum, eu consiga acessar um computador da rede da Caelum. As rotas são fundamentais.

Então repare que não adianta eu ter só um IP, por quê? Porque dentro da minha rede eu vou ter um IP. Outras pessoas, dentro da rede delas, vão ter os IPs delas, cada um com seus IPs, felizes e contentes.

Só que nesse sentido podemos ter duplicação de IP, mesmo que tenhamos aquele limite, 0 a 255, com alguns casos reservados, mesmo que eu tenha esses limites, repare que eles podem ser “reutilizados” em redes distintas, basta que isso não esteja exposto para esse outro “internet”, não haja um conflito óbvio, por quê? Porque, nesse caso, a única ponte de comunicação é entre estes computadores e estes.

Então, na verdade, a “Internet A” não sabe que existe esse computador com IP “192.168.1.33”, ele só sabe que existe este IP aqui. Aí está um detalhe, repare que esses computadores da esquerda estão conectados com o servidor dhcp, então esse servidor é o IP dentro dessa rede.

Existe uma outra rede. Vamos desenhar uma outra rede que está conectada? A outra rede é essa desenhada. Qual é o IP dessa máquina nesta rede? Repare que esse dispositivo tem, no meu caso, 5 entradas de rede, 4 que estão conectados esses 4 computadores, e uma quinta que é uma rede separada, que é essa assinalada.

Então é bem comum quando pegamos esses dispositivos, vermos que eles têm 1 de uma cor e 4 de outras cores. Vamos dar uma olhada? Estou pegando um roteador qualquer. Repare que ele tem um conector separado, que é a sua rede de fora, e 4 conectores para sua rede de dentro.

Então repare que são duas redes interconectadas através desse dispositivo. Então o que você está fazendo é, usando esse dispositivo, para interconectar duas redes diferentes. Esses dois computadores só conseguem se ver nessa última rede desenhada e, esse dispositivo, consegue se comunicar com essa rede de fora, que não precisa ser só um computador, pode ser vários também.

Da mesma maneira que temos, na primeira rede, 4, nesse “internet 4” pode ter um monte. Eu tenho uma ponte, que é um cabo e, dentro desse cabo, ele abre para vários lá dentro. Foi o que acabou acontecendo na prática.

Então repare que, na verdade, podemos pensar dessa forma: que esse quadrado desenhado é o que chamamos de internet. Então o meu dispositivo inicial, que estava na ponta, está conectado à internet. Eu, com esse meu computador, estou conectado na minha rede interna que está conectada à internet, como? Vamos dar uma olhada na foto.

Eu estou conectado, com o meu PC, na rede interna, que está conectado na internet. As outras fotos são similares.

Eu estou conectado via wi-fi, por exemplo, neste dispositivo, ou com o meu computador, neste dispositivo, com a impressora, neste dispositivo, com meu vídeo-game, neste dispositivo ou com a TV inteligente, neste dispositivo. E este dispositivo está conectado com a internet através de vários outros dispositivos. Por aí vai.

Então esse dispositivo é o que nos permite criar nossa rota, por isso estamos dando o nome dele de “roteador”. Então esse servidor dhcp costuma ser também importante para as rotas, por isso costumamos chama-lo de roteador.

Tem diversas maneiras dele fazer esse roteamento, maneiras “burras”, maneiras inteligentes, tem diversas maneiras dele fazer isso. Alguns são mais caros de se comprar e alguns mais baratos, justamente porque ele é mais inteligente ou menos inteligente. Não é o caso do nosso foco nesse curso, o que precisamos saber é que o roteamento existe porque existem redes diferentes.

Então quer dizer que, o IP que servidor dhcp tem para essa rede, é diferente do IP que ele tem para a rede de computadores, por quê? Porque, nessa rede com os computadores, ele é o servidor dhcp dessa rede, só que quem deu o IP para ele? Quem deu o IP para ele foi que está conectado entre a “Internet A”.

A “internet A”, o meu provedor, quem está conectando esse cabo para mim, costumamos chamar vulgarmente de provedor ou de internet, ele conecta o cabo em outras 100.000 pessoas, e é ele que define o meu IP. Em geral esse IP é dinâmico, então, em geral, vou ter esse meu servidor dhcp – esse é o meu roteador -, definiu esse IP para ele mesmo, internamente. Mas externamente, o IP dele é um outro IP, por exemplo, “200.156.1.42”.

Externamente, isto é, para a internet, o IP desse servidor dhcp é “200.156.1.42”. Esse IP não pode ser repetido no resto da internet, esse IP pode ser repetido internamente em uma outra rede? Até poderia, só que você não conseguiria acessar esse servidor provavelmente. Você tem que tomar cuidado.

É aquela história, dentro de uma rede não faz sentido você ter dois dispositivos com o mesmo IP, porque você, provavelmente, ficaria perdido. É muito difícil identificar com qual dos dois você está querendo se comunicar. Seria, até mesmo, suspeito, de ter fraudes, de você hackear um computador, receber informações que, na verdade eram de um outro computador.

Se você fingir que você tem um IP que é de uma outra pessoa e isso funcionar, você corre o risco de receber informações que eram daquela pessoa e fazer uma quebra de segurança, um possível ataque, isso. Então é um cuidado que vamos ter que tomar.

Por isso, por regra geral, vamos não se preocupar com esse caso. Os IPs internos são separados, distintos, e o servidor dhcp tem um IP interno chamado “192.168.1.1”. O IP dele para rede externa é “200.156.1.42”. Esse dispositivo de baixo a mesma coisa, ele tem um IP interno e o IP, externamente, é “200.155.7.43”, por exemplo, ele tem um outro IP. Então são IPs distintos conectados na internet.

Se eu tivesse só o meu conectado direto no meu provedor, o cabo do meu provedor – que eu chamo de internet – vem direto na minha casa, não passa por aparelho nenhum, vem direto no meu computador. Esse era o meu computador, ele tem um IP externo já. Mas na prática, hoje em dia, é muito comum o quê? Chegou um cabo na sua casa, você coloca no roteador, por quê? Porque você quer a rede wireless.

É muito comum, hoje em dia, você ter rede wireless dentro de casa ou nas empresas. Então quando o cabo chega é incomum, antes era comum, chegar direto no meu computador, meu computador tinha IP externo. Agora não, ele chega no roteador e, o roteador é wireless e wired, tem as duas coisas, com fio e sem fio, e eu tenho vários cabos conectados, com fio ou sem fio, cada um com seus IPs internos.

Então isso dá uma visão mais clara que o “ifconfig” dá o nosso IP, que o “dhcp” é quem distribui esses IPs, internamente, dentro de uma rede, e que redes distintas podem ter IPs idênticos dentro da rede, internamente.

Só que, é claro, quando esse meu computador, por exemplo, o computador de apoio que estou usando, quiser acessar o servidor de alunos, não adianta ele querer acessar o “192.168.1.76”; por que não adianta. Porque esses “internets” dessa rede nem sabem que essa rede existe, ele só sabe que existe o “200.155.7.43”.

Então repare que, de dentro, eu só tenho conhecimento dos dispositivos dessa rede. Se eu quiser acessar um dispositivo de fora, vou precisar de uma rota. Agora entra a importância de entendermos como funcionam essas rotas, isso que vou mostrar agora para vocês, como funcionam essas rotas para encontrarmos esses computadores na internet.

Sobre o curso Certificação Linux LPI Essentials parte 11: Your Computer on the Network

O curso Certificação Linux LPI Essentials parte 11: Your Computer on the Network possui 116 minutos de vídeos, em um total de 27 atividades. Gostou? Conheça nossos outros cursos de Linux em DevOps, ou leia nossos artigos de DevOps.

Matricule-se e comece a estudar com a gente hoje! Conheça outros tópicos abordados durante o curso:

Aprenda Linux acessando integralmente esse e outros cursos, comece hoje!

Plus

  • Acesso a TODOS os cursos da plataforma

    Mais de 1200 cursos completamente atualizados, com novos lançamentos todas as semanas, em Programação, Front-end, UX & Design, Data Science, Mobile, DevOps e Inovação & Gestão.

  • Alura Challenges

    Desafios temáticos para você turbinar seu portfólio. Você aprende na prática, com exercícios e projetos que simulam o dia a dia profissional.

  • Alura Cases

    Webséries exclusivas com discussões avançadas sobre arquitetura de sistemas com profissionais de grandes corporações e startups.

  • Certificado

    Emitimos certificados para atestar que você finalizou nossos cursos e formações.

  • Alura Língua (incluindo curso Inglês para Devs)

    Estude a língua inglesa com um curso 100% focado em tecnologia e expanda seus horizontes profissionais.

12X
R$85
à vista R$1.020
Matricule-se

Pro

  • Acesso a TODOS os cursos da plataforma

    Mais de 1200 cursos completamente atualizados, com novos lançamentos todas as semanas, em Programação, Front-end, UX & Design, Data Science, Mobile, DevOps e Inovação & Gestão.

  • Alura Challenges

    Desafios temáticos para você turbinar seu portfólio. Você aprende na prática, com exercícios e projetos que simulam o dia a dia profissional.

  • Alura Cases

    Webséries exclusivas com discussões avançadas sobre arquitetura de sistemas com profissionais de grandes corporações e startups.

  • Certificado

    Emitimos certificados para atestar que você finalizou nossos cursos e formações.

  • Alura Língua (incluindo curso Inglês para Devs)

    Estude a língua inglesa com um curso 100% focado em tecnologia e expanda seus horizontes profissionais.

12X
R$120
à vista R$1.440
Matricule-se
Conheça os Planos para Empresas

Acesso completo
durante 1 ano

Estude 24h/dia
onde e quando quiser

Novos cursos
todas as semanas