domingo, 31 de julho de 2016

O protocolo dhcp-server instalação


Protocolo DHCP

DHCP é um acrônimo para Protocolo de Configuração Dinâmica de computador [Dinamic Host Configuration Protocol]. É um protocolo cliente/servidor, que possibilita computadores clientes recebam configurações TCP/IP dinamicamente. 
Esta funcionalidade tem muita importância em grandes redes, pois o controle das configurações TCP/IP são feitas de forma centralizada e automática, liberando um tempo de serviço precioso para o administrador,  da para pensar em  configurar IPs manualmente numa rede  de 1000 clientes.
O cliente quando iniciado, envia um pedido de configuração (request) em broadcast e espera a resposta de um servidor e tão somente o servidor e capaz de ouvir a solicitação.
 E a resposta do servidor são as informações específicas propriamente ditas. O servidor escuta a porta 67 e transmite na porta 68.
dhcp configura automaticamente  os ip de todas as  interfaces que estiverem configuradas para receber  o seu IP via DHCP.
A atribuição ded IPS pelo DHCP  segue um ritual..

1º - dhcpdiscover --> pedido do  cliente a toda rede, e somente o servidor ira reconhecer esta solicitação
2º - dhcpoffer --> O servidor envia uma oferta de Ip para a maquina solicitante.
3º - A maquina solicitante aceita  a oferta de ip e envia o  dhcprequest
4º - O servidor então envia o dhcpack, que configura o endereço do ip para a maquina.

Uma vez que o cliente, antes da inicialização, não possui endereço IP, como ele pode  se comunicar com o servidor?
Na verdade, toda comunicação inicial entre o cliente e o servidor independe do protocolo IP, utilizando protocolo a nível de enlace para que um cliente e o servidor negocie os parâmetros de configuração necessários.
Esta negociação é realizada por mensagens transmitidas por difusão  (broadcast] na sub-rede, sendo limitada a estações fisicamente conectadas na mesma rede.
Uma vez estabelecido esta negociação inicial, a comunicação pode ser baseada no protocolo IP. Para saber mais sobre este processo de negociação, consulte a RFC2131 disponibilizada no endereço http://ftp.rfc-editor.org/in-notes/rfc2131.txt.
o protocolo de enlace que o DHCP utiliza é baseado no BOOTP - acrônimo de BOOTstrap Protocol - que é um protocolo que permite que estações sem disco rígido inicializem-se pela rede, carregando e inicializando o sistema operacional pela própria rede, além de obter vários parâmetros essenciais para o funcionamento da estação na rede, como seu próprio endereço IP, através de um servidor BOOTP na rede.
Por isso, o protocolo DHCP é considerado como uma extensão do BOOTP, por ser apenas um subconjunto do complexo protocolo BOOTP.



O DHCP também é um protocolo essencial para provedores Internet, uma vez que permite que clientes obtenham dinamicamente seus parâmetros quando se conectam no provedor, via linha discada,
por exemplo.
Assim, toda vez que um cliente estabelece uma conexão com o servidor, geralmente um novo endereço IP é obtido. Se o DHCP não for utilizado, todo cliente deveria ser configurado estaticamente, cada um com um número IP exclusivo, o que seria inviável na prática. Para um provedor com 1000 clientes, por exemplo, deveria se ter disponível 1000 endereços IP's, o que seria impraticável levando se em conta a escassez dos endereços IP. Além disto, seria totalmente inviável a administração destes números IP's, com a entrada e saída de novos clientes.
Não existem muitas implementações de DHCP para Linux licenciados sob a GPL, talvez seja devido ao grande sucesso do DHCP do ISC (ISC DHCP)- Internet Software Consortium - http://www.isc.org - que é a implementação mais popular, disponível em quase todas as distribuições de Linux. Além deste software além de ser considerado muito bom, é totalmente disponibilizado sob a GPL. Outra boa alternativa de DHCP é o DHCP conjugado com BOOTP criado pela Universidade de Carnegie Mellon (CMU BOOTP/DHCP) mantido pela Universidade de Princeton, disponível no endereço: http://www.net.princeton.edu/software/dhcpd/. Neste documento iremos enfocar no ISC DHCP. Toda vez que citarmos DHCP estaremos referindo ao ISC DHCP, existem várias outras implementações do DHCP comerciais, geralmente implementadas por empresas donas de sistemas operacionais, como: Microsoft, Novell, Cisco, IBM, HP e Sun.

Instalando o DHCP

O DHCP está disponível através de pacotes RPM - arquivos binários que podem ser instalados através da ferramenta RPM - porém também é possível obter o código fonte do programa, compilar e instalar.
Instalando o DHCP através de arquivos binários
Os pacotes RPMs disponibilizados são: dhcpcd (cliente) e dhcp (servidor), execute:
#rpm -ivh dhcp*
dhcp        
###########################################################
dhcpcd      
###########################################################
O primeiro pacote é referente ao DHCP daemon servidor, baseado no ISC DHCP. Além de instalar o binário do daemon DHCP (dhcpd), também instala a documentação oficial e as páginas de manual. O segundo pacote é referente a um daemon cliente DHCP de autoria de Sergei Vizniuk.
%T% o pacote original via código-fonte do ISC DHCP fornece um cliente DHCP denominado dhclient, porém este não é disponibilizado no pacote RPM do Linux Conectiva. Isto é devido às limitações do cliente dhclient, que além de não ser implementado como daemon, também não tem as várias funcionalidades que o dhcpcd - DHCP Client Daemon, de Sergei Vizniuk - possui.

Instalando o DHCP através do código fonte

O protocolo DHCP geralmente é implementado através de um daemon cliente (dhclient ou dhcpcd) e um daemon servidor (dhcpd).
%PASSO% O código-fonte está disponível no endereço www.isc.org ou via FTP anônimo em ftp://ftp.isc.org/isc/dhcp. Esta implementação engloba o servidor dhcpd, assim como o cliente dhclient. Faça download do arquivo que contém os fontes, descompacte-o utilizando o comando tar, em seguida compile-o e instale-o. Vejamos:
#cp dhcp-2.0pl5.tar.gz /usr/local/src
#cd /usr/local/src
#tar xvfz dhcp-2.0pl5.tar.gz    
#cd dhcp-2.0pl5
#./configure
#make
#make install
Basicamente este comando instala o daemon DHCP, em /usr/sbin/dhcpd; o cliente DHCP, em /usr/sbin/dhclient, porém este não é muito utilizado na prática; e as páginas de manual do comando. Veja também disponibilizado uma amostra de arquivo de instalação, disponível em server/dhcpd.conf.
Um cliente bastante utilizado é o dhcpcd, de autoria de Sergei Vizniuk. Seu código fonte é disponível em ftp://ftp.phystech.com/pub. Para maiores informações sobre a utilização deste cliente, acesse o endereço: http://www.scrounge.org/linux/dhcpcd.html.
A vantagem de compilar diretamente o código fonte é que esta maneira é genérica para qualquer distribuição, ou seja, a forma apresentada acima, desde que se tenha pré-instalado as bibliotecas padrões do linux, o compilador gcc e o utilitário de execução de scripts de compilação make, pode ser usada em todas distribuições. Para maiores informações, veja o README que acompanha o pacote para maiores detalhes.

Podemos instalar o dhcp pela ferramenta apt.
Existem dois pacotes entre os quais devemos escolher para instalar o nosso servidor: dhcpd e dhcp3-server nas versões atuais e o isc-dhcp-server.
lab152:~# apt-get install isc-dhcp-server
Reading Package Lists... Done
Building Dependency Tree... Done
The following extra packages will be installed:
dhcp3-common
The following packages will be REMOVED:
dhcp
The following NEW packages will be installed:
dhcp3-common dhcp3-server
0 upgraded, 2 newly installed, 1 to remove and
384 not upgraded.
Need to get 684kB of archives.
After unpacking 1127kB of additional disk space
will be used.
Do you want to
continue? [Y/n]
Anterior                                                                                                                Proxima 

As funções do Poderoso Editor de Textos VI ou VIM

As funções do Poderoso Editor de Textos VI ou VIM

O "vi" é a sigla para "Visual Interface". A origem desse nome se deve ao seguinte fato: quando o vi foi criado (começo da década de 80), não era comum existirem editores de textos como nos dias de hoje. Naquela época, você digitava um texto mas não podia vê-lo! Isso mesmo! Em 1992, foi criado o vim
(Vi IMitator), um clone fiel ao vi, porém com muitas outras funcionalidades, que
só foram sendo adicionadas. Algum tempo depois, o vim passou a ser chamado de `Vi IMproved' (vi melhorado).
O vim é um dos editores de textos mais utilizados no mundo Unix. Em alguns sistemas, existe um link simbólico (/bin/vi) apontando para o /usr/vim. Em outros, o /bin/vi é o executável, só que executa diretamente o vim. Muita gente acha que usa vi, mas na verdade utiliza o vim, e eles têm algumas diferenças.

O que você verá abaixo fala sobre o vim.
O vim é um editor de textos muito poderoso, ele pode: abrir vários arquivos ao mesmo tempo, possui sistema de autocorreção, auto identação, seleção visual, macros, seleção vertical de texto, uso de expressões regulares, sintaxe colorida, e muito mais. Ele não é exclusivo do Unix, ou seja, pode ser executado em outras plataformas, como Amiga, MacOS, Sun, Windows entre outras.
Existe também o gvim, que é o vim em modo gráfico, com todas as funcionalidades do vim em pleno funcionamento, o que muda é apenas o modo gráfico mesmo.

O vim possui vários modos, ou seja, estados em que ele se encontra. São eles: modo de inserção, comandos, linha de comando, visual, busca e reposição. Abordarei os dois principais:
Modo de inserção e de comandos
Para identificar o modo (estado) do vim, basta visualizar o rodapé da tela.
Agora, vamos à prática. Para executar o vim, utilize:
$ vi => Abre o vim vazio, sem nenhum arquivo e exibe a tela de apresentação.
$ vi arquivo => Abre o arquivo de nome "arquivo".
$ vi arquivo + => Abre o arquivo de nome "arquivo", com o cursor no final do
mesmo.
$ vi arquivo +10 => Abre o arquivo de nome "arquivo", com o cursor na linha
10.
$ vi arquivo +/Copag => Abre o arquivo de nome "arquivo", na primeira ocorrência da palavra "Copag".
Ao executar o vim, ele inicia diretamente em modo de comando. Para comprovar, é só olhar na última linha (rodapé) e não vai haver nada lá. Isso quer dizer que você não conseguirá escrever nada, pode digitar a vontade que só vai ouvir beeps. Para começar a escrever, pressione "i" em seu teclado. O vim entra em modo de inserção, que você comprova (como falado anteriormente) pelo rodapé da tela, onde fica a seguinte marcação:
- - -- INSERT --
Suponha que você já digitou o bastante, e quer salvar, por segurança.
Pressione a tecla ESC para voltar em modo de comandos. E veja os comandos para salvar/sair:
:w => Salva o arquivo que está sendo editado no momento.
:q => Sai.
:wq => Salva e sai.
:x => Idem.
ZZ => Idem.
:w! => Salva forçado.
:q! => Sai forçado.
:wq! => Salva e sai forçado. Então, você editou uma boa quantidade de textos e quer salvar:
:w
Agora, quer voltar a editar o texto:
i
Lembre que utilizando o "i" para inserção, a mesma se inicia inserindo texto antes do cursor. Veja agora outros subcomandos de inserção de texto:
A => Insere o texto no fim da linha onde se encontra o cursor
o => Adiciona uma linha vazia abaixo da linha corrente
O => Adiciona uma linha vazia acima da linha corrente
Ctrl + h => Apaga último caractere à esquerda
Voltando ao modo de comando:
Veja agora subcomandos para movimentação pelo texto:
Ctrl + f => Passa para a tela seguinte.
Ctrl + b => Passa para a tela anterior.
H => Move o cursor para a primeira linha da tela.
M => Move o cursor para o meio da tela.
L => Move o cursor para a última linha da tela.
h => Move o cursor para caractere a esquerda.
j => Move o cursor para linha abaixo.
k => Move o cursor para linha acima.
l => Move o cursor para caractere a direita.
w => Move o cursor para o início da próxima palavra (não ignorando a pontuação).
W => Move o cursor para o início da próxima palavra (ignorando a pontuação).
b => Move o cursor para o início da palavra anterior (não ignorando a pontuação).
B => Move o cursor para o início da palavra anterior (ignorando a pontuação).
0 (zero) => Move o cursor para o início da linha corrente.
^ => Move o cursor para o primeiro caractere não branco da linha.
$ => Move o cursor para o fim da linha corrente.
nG => Move o cursor para a linha de número "n"
(susbstitu-a n pelo número da linha)..
G => Move o cursor para a última linha do arquivo.
Copiando e colando textos no vim (utilizando o mouse)
Selecione o texto necessário com o botão esquerdo do mouse. Quando você for colar, saiba que o texto será colado a partir de onde se encontra o cursor (esse que aparece, às vezes piscando e às vezes não, quando você está digitando). Para colar, depois de ter selecionado o texto, você pode utilizar uma dessas opções:1) Pressionando o botão direito do mouse;
2) Pressionando o botão direito + botão esquerdo juntos;
3) Pressionando o botão do meio do mouse (mouse de 3 botões);
Observação: Lembre-se que o vim deve estar no modo de inserção.
Usando o modo visual do vim
Entre no modo visual: v
Agora, utilize as teclas direcionais (setas) do teclado, para selecionar o texto desejado.
Pressione e cole, utilizando a tecla "p" (paste).
Veja agora como apagar um determinado texto:
Utilizando normalmente as teclas Backspace/Delete, ou entrando em modo visual (v) e pressionando a tecla Delete.
Você pode remover até o final de uma palavra, utilizando: dw
Pode também remover até o final de uma frase: d$
Desfazendo uma ação
É claro que você pode desfazer uma ação que você considera errado, ou que errou ao digitar o texto. É só utilizar: u
Se você precisar voltar o texto na tela, utilize as teclas Ctrl + r.
Subcomandos para localização de texto
/palavra => Procura pela palavra ou caractere acima ou abaixo do texto.
?palavra => Move para a ocorrência anterior da palavra (para repetir a busca
use "n").
n => Repete o último comando utilizando / ou ?.
N => Repete o último comando / ou ? ao contrário (baixo para cima).
Ctrl+g => Mostra o nome do arquivo, o número da linha corrente e o total de
linhas.
Mais opções para remoção de caracteres
x => Apaga o caractere onde o cursor estiver.
dd => Apaga a linha inteira onde o cursor estive
D => Apaga a linha a partir da posição do cursor até o fim.
J => Une a linha corrente à próxima.
:5dd => Remove-as próximas 7 linhas a partir da posição do atual do cursor
(qualquer número).Mais para copiar e colar
:yy => Copia a linha onde o cursor se encontra.
:5yy => Copia as próximas 5 linhas a partir da posição atual do cursor.
:p => Cola o que foi copiado na linha abaixo do cursor atual.
Opções para substituição de textos
rCARACTER => Substitui o caractere onde o cursor se encontra pelo caractere especificado em CARACTER.
RTEXTO => Substitui o texto corrente pelo texto digitado (sobrepõe).
cw => Remove a palavra corrente para substituição.
cc => Remove a linha corrente para substituição.
C => Substitui o restante da linha corrente, esperando o texto logo após o comando.
J => Une a linha corrente à próxima.
:s/velho/novo => Substitui a primeira ocorrência de "velho" por "novo" na linha corrente.
:% s/velho/novo => Substitui em todo o arquivo (%) a primeira ocorrência de
"velho" por "novo" em cada linha.
:% s/velho/novo/g => Substitui em todo o arquivo (%), todas (g) as ocorrências de "velho" por "novo".
:% s/velho/novo/gc => Igual ao anterior, mas pedindo confirmação para cada substituição.
:% s/^String[0-9]//gc => Expressões regulares também funcionam, como no sed.
:% s/./\u&/gc => Converte para maiúsculas (\u) o primeiro caractere (.) de cada linha.
Abreviações
:ab => Mostra todas as abbr.
:abc[lear] => Remove todos.
:iab => Apenas para modo de inserção.
:iabc[lear] => Tira todos de inserção.
:cab => Apenas p/modo de comando ( : ).
:cabc[lear] => Tira todos os modos de comando.
:una vc => Tira ab para vc.
Observação: Pontuação, espaço ou o ENTER, disparam a expansão de uma abreviação. Porém, Ctrl+] também pode ser usado, para expandir sem adicionar caracteres.
Opções para o comando SET
:set
autowrite aw => Salva a cada alteração.
backspace bs => Comportamento backspace (1 ou 2).
errorbell eb => Campainha de erro.
expandtab et => Troca tab por espacos.fileformat=dos ff => Converte o arquivo para DOS.
hidden hid => Preserva o buffer.
hlsearch hls => ilumina a última procura.
ignorecase ic => Case insensitive na busca.
incsearch is => Ilumina procura enquanto digita.
laststatus=2 => Mostra linha de estado.
lazyredraw lz => Não redesenha em macros.
lines=N => número de linhas na tela.
magic => Usar mágicas na procura de padrões.
number nu => Mostra o número da linha.
report=N => Mostra aviso quando N linhas mudaram (0=sempre).
showcmd => Mostra o comando que se está fazendo.
showmatch sm => Mostra o casamento de {},[],().
smartcase scs => Assume "noic" quando tiver maiúsculas.
textwidth=N => Quebra de linha do texto.
undolevels ul=N => Guarde os N últimos comandos para desfazer
(padrão=1000).
vb t_vb= => Retira o "beep" de erro.
Agora invertendo maiúsculas/minúsculas
5~ => Inverte os 5 próximos caracteres.
g~$ => Inverte todos os caracteres até o fim da linha.
seleciona, u => Converte para minúsculas.
seleciona, U => Converte para maiúsculas.
seleciona, ~ => Inverte.
Observação: Onde está escrito "seleciona", é para fazer utilizando o modo visual (v).
Agora veja como definir coluna de quebra de linha (problema que eu tive quando iniciei no aprendizado do vim):
:set textwidth=N
Se você já estiver num arquivo pronto:
:set wm=5 => O número 5 aqui são as colunas que serão "cortadas".
gqG => Até o final do arquivo.
Vamos ver agora o que podemos fazer pressionando a tecla "Ctrl":
É claro que é segurando Ctrl + .
No modo de COMANDO:
A => Incrementa um número (Add)
X => Decrementa um número
S => ScrollLock
L => Redesenha telaV => Modo visual (Visual Vertical)
G => Status do arquivo
M => Início da próxima linha
E => Linha abaixo sem mover cursor
Y => Linha acima sem mover cursor
N => Próxima linha (Next)
P => Linha anterior (Previous)
F => PageDown (Forward)
B => PageUp (Backyard)
U => PageUp / 2 (Up)
D => PageDown / 2 (Down)
Agora, no modo de INSERÇÃO:
A => Insere o último texto inserido
I => TAB
S => ScrollLock
H => BackSpace
T => 2 tab's no início da linha (Two Tabs)
V => Anula expansão do próximo caractere
J => Enter - quebra de linha
M => Enter - quebra de linha
L => Redesenha tela
R => Insere conteúdo do registrador [a-z] (Veja abaixo)
K => Insere um dígrafo (Veja abaixo)
N => Procura palavra no texto atual (Next)
P => Procura palavra no texto atual (Previous)

Y => Copia caractere que está acima (Yank)

Fonte do artigo.
https://drive.google.com/file/d/0B_aOLYRrVoJJWkpFTHdyLXEtM0k/view?usp=sharing

sábado, 30 de julho de 2016

Configurando Placas de Rede no LINUX.

Administração e Gerenciamento de REDES no LINUX DEBIAN.

Parte I
Configurando Placas de Rede


Instalando uma Placa de Rede.

Supondo que a Placamãe de nosso PC seja offbord, que seja necessário a instalação de uma ou duas placas de rede.

Para que possamos instalar as placas de redes se faz necessário desligar e fazer a instalação das placas com o PC desconectado da rede eletrica.

Após a instalação das redes em seus respectivos slots, ao ligarmos o PC pode acontecer duas coisas, a interface foi reconhecida pelo sistema ou não.

O sistema Debian pode reconhecer uma placa de rede, levanta e configura seus módulos através do serviço de detecção de hardware hotplug, deixando a placa funcionando e pronta para ser configurada.
Quando isso não ocorre fica por conta de módulos que por algum motivo não puderam ser inicializados corretamente pelo sistema, isso é o que chamamos de troubleshooting.

Uma vez detectado o problema precisamos nos certificar de que placa esta funcionando, de nada vai adiantar os esforços para levantar a interface se a mesma estiver queimada. Para checar as placas e saber se estão funcionando o GNULinux oferece o programa lspci, este comando faz o levantamento de todo o hardware instalado.

Veja:

urutau@urutec ~ $ lspci
00:00.0 RAM memory: NVIDIA Corporation MCP61 Memory Controller (rev a1)
00:01.0 ISA bridge: NVIDIA Corporation MCP61 LPC Bridge (rev a2)
00:01.1 SMBus: NVIDIA Corporation MCP61 SMBus (rev a2)
00:01.2 RAM memory: NVIDIA Corporation MCP61 Memory Controller (rev a2)
00:02.0 USB controller: NVIDIA Corporation MCP61 USB 1.1 Controller (rev a3)
00:02.1 USB controller: NVIDIA Corporation MCP61 USB 2.0 Controller (rev a3)
00:04.0 PCI bridge: NVIDIA Corporation MCP61 PCI bridge (rev a1)
00:05.0 Audio device: NVIDIA Corporation MCP61 High Definition Audio (rev a2)
00:06.0 IDE interface: NVIDIA Corporation MCP61 IDE (rev a2)
00:07.0 Bridge: NVIDIA Corporation MCP61 Ethernet (rev a2)
00:08.0 IDE interface: NVIDIA Corporation MCP61 SATA Controller (rev a2)
00:08.1 IDE interface: NVIDIA Corporation MCP61 SATA Controller (rev a2)
00:09.0 PCI bridge: NVIDIA Corporation MCP61 PCI Express bridge (rev a2)
00:0b.0 PCI bridge: NVIDIA Corporation MCP61 PCI Express bridge (rev a2)
00:0c.0 PCI bridge: NVIDIA Corporation MCP61 PCI Express bridge (rev a2)
00:18.0 Host bridge: Advanced Micro Devices, Inc. [AMD] Family 10h Processor HyperTransport Configuration
00:18.1 Host bridge: Advanced Micro Devices, Inc. [AMD] Family 10h Processor Address Map
00:18.2 Host bridge: Advanced Micro Devices, Inc. [AMD] Family 10h Processor DRAM Controller
00:18.3 Host bridge: Advanced Micro Devices, Inc. [AMD] Family 10h Processor Miscellaneous Control
00:18.4 Host bridge: Advanced Micro Devices, Inc. [AMD] Family 10h Processor Link Control
02:00.0 VGA compatible controller: NVIDIA Corporation NV44 [GeForce 7100 GS] (rev a1)
urutau@urutec~ $

No exemplo acima a placa de rede foi reconhecida o que significa que esta funcionando é podemos então começar sua configuração.

No LINUX exite um arquivo responsável pela configuração das placas de rede, e o
  /etc/network/interfaces.


# interfaces(5) file used by ifup(8) and ifdown(8)
auto lo
iface lo inet loopback

allow hotplug eth0

ifce eth0 inet  static
address 192.168.0.3
networkmask 192.168.0.0/24
broadcast 192.168.0.255

No arquivo acima configuramos manualmente o endereço de Ip para a inerface eth0, e obrigatório o uso de pelo menos duas diretivas,
 o address = nº do IP
e a netmaskmask.

Também podemos configurar a rota com o route.

route add default gw {IP-ADDRESS} {INTERFACE-NAME}

  • IP-ADDRESS: Configura o ip do roteador
  • INTERFACE-NAME:  o nome da interface  eth0
Supondo que o endereço do IP  e 192.168.1.254 dar o seguinte comando como root user:
# route add default gw 192.168.1.254 eth0
OU  você pode usar o hostname  tipo dsl-router:

# route add default gw dsl-router eth0


Ou com o comando IP

  IP 192.168.1.254  do gateway conectado  via eth0 network interface:

# ip route add 192.168.1.0/24 dev eth0
OR
# ip route add 192.168.1.0/24 via 192.168.1.254

Depois de tudo definido podemos usar o  comando IFCONFIG  para gerenciar nossa rede e  interfaces.

O comando ifconfig e responsável por levantar  derrubar e configurar uma placa de rede.

urutau@urutau-MCP61M-M3 / $ ifconfig
eth0      Link encap:Ethernet  Endereço de HW 10:78:d2:17:10:5f  
          inet end.: 192.168.0.3  Bcast:192.168.0.255  Masc:255.255.255.0
          endereço inet6: fe80::1278:d2ff:fe17:105f/64 Escopo:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Métrica:1
          pacotes RX:144027 erros:0 descartados:0 excesso:0 quadro:0
          Pacotes TX:84968 erros:0 descartados:0 excesso:0 portadora:0
          colisões:0 txqueuelen:1000 
          RX bytes:177349032 (177.3 MB) TX bytes:9562280 (9.5 MB)

eth1      Link encap:Ethernet  Endereço de HW 00:21:91:92:59:ad  
          UP BROADCAST MULTICAST  MTU:1500  Métrica:1
          pacotes RX:0 erros:0 descartados:0 excesso:0 quadro:0
          Pacotes TX:0 erros:0 descartados:0 excesso:0 portadora:0
          colisões:0 txqueuelen:1000 
          RX bytes:0 (0.0 B) TX bytes:0 (0.0 B)

lo        Link encap:Loopback Local  
          inet end.: 127.0.0.1  Masc:255.0.0.0
          endereço inet6: ::1/128 Escopo:Máquina
          UP LOOPBACK RUNNING  MTU:65536  Métrica:1
          pacotes RX:1877 erros:0 descartados:0 excesso:0 quadro:0
          Pacotes TX:1877 erros:0 descartados:0 excesso:0 portadora:0
          colisões:0 txqueuelen:0 
          RX bytes:321251 (321.2 KB) TX bytes:321251 (321.2 KB)

ifconfig - configura uma interface de rede
SINOPSE

ifconfig interface [aftype] opções | endereços ...

EX.

ifconfig eth0 192.168.0.3 networkmask 255.255.255.0
DESCRIÇÃO
ifconfig é usado para configurar (e posteriormente manter) as interfaces de rede. É usado durante o boot para configurar a maioria delas para um estado usável. Depois disto, é normalmente somentenecessário durante depurações ou quando for necessária uma configuração fina do sistema.
Se nenhum argumento for informado, ifconfig somente mostra o estado das interfaces correntemente definidas. Se um argumento interface for informado, ele mostra somente o estado da interface informada. De outra forma ele assume que os parâmetros devem ser configurados.
OPÇÕES
interface
O nome da interface de rede. Usualmente é um nome como eth0 , sl3 ou algo parecido: um nome de driver de dispositivo seguido por um número.

Para sabe quais são a interfaces dispoivéis  TYPE 

ifconfig -a

Depois de configurar a placa a rede o gateway, precisamos levantar o serviço
isso pode ser feito com o comando:

ifup eth0

up Esta flag causa a ativação da interface.
veja que apos o comando o systema executa os quatro passos para atribuição do ip, se for definido nenhum endereço o dhcp aloca um automaticamente.



down Esta flag desativa o driver desta interface, é útil quando alguma coisa começar a dar problemas.
[-]arp Habilita ou desabilita o uso do protocolo ARP para esta interface. Se o sinal de menos (-) estiver presente a opção é desligada.

urutau-MCP61M-M3 / # ifdown eth0
ifdown: interface eth0 not configured

urutau-MCP61M-M3 / # 

Outra diretivas.

[-]trailers
Habilita ou desabilita o uso de trailer em frames Ethernet. Não é utilizada na implementação atual do pacote net-tools.
[-]allmulti
Habilita ou desabilita o modo promiscuous da interface. Isto significa que todos os frames passarão pela camada de rede do kernel, permitindo monitoração da rede.
metric N
Este parâmetro configura a métrica da interface. Não é usado atualmente, mas será implementado no futuro.
mtu N Este parâmetro configura a Unidade Máxima de Transferência (MTU) de uma interface. Para Ethernet é um número entre 1000-2000 (o padrão é 1500). Para SLIP, use algo entre 200 e 4096. Note que a implementação atual não manipula fragmentação IP ainda, então é melhor configurar a MTU com um tamanho adequado!

dstaddr addr
Configura o endereço IP do "outro lado" no caso de um link
Ponto-A-Ponto, como PPP. Esta palavra-chave tornou-se obsoleta e deve ser usada a nova palavra-chave pointopoint.

netmask addr
Configura a máscara de rede IP para esta interface. Este valor assume o padrão usual das classes A, B ou C (deduzindo-o a partir do endereço IP da interface), mas pode ser configurado para qualquer valor para o uso de sub-redes.

irq addr
Configura a linha de interrupção (IRQ) usada por este dispositivo. Muitos dispositivos não suportam configuração dinâmica de IRQ.

[-]broadcast [endereço]
Se o argumento endereço for informado, configura o endereço de protocolo broadcast para esta interface. De outra forma ele somente configura a flag IFF_BROADCAST da interface. Se a
palavra-chave for precedida por um sinal de menos (-) , então a flag é removida.

[-]pointopoint [endereço]
Esta palavra-chave habilita o modo ponto-a-ponto da interface, significando que ela é um link direto entre duas máquinas sem ninguém ouvindo (ou, pelo menos nós esperamos que este seja o
caso :-) Se o argumento endereço for informado, configura o endereço de protocolo do outro lado do link, exatamente como a palavra-chave obsoleta dstaddr faz. De outra forma, ela somente
configura a flag IFF_POINTOPOINT da interface. Se a palavrachave for precedida por um sinal de menos (-) , então a flag é removida.

hw
 Configura o endereço de hardware para esta interface, se o driver do dispositivo suportar esta operação. A palavra-chave deve ser seguida pelo nome da classe do hardware e o equivalente
em ASCII do endereço de hardware. As classes de hardware atualmente suportadas incluem ether (Ethernet), ax25 (AMPR AX.25), ARCnet e netrom (AMPR NET/ROM).

multicast
Inicializa a flag de multicast para a interface. Normalmente, isto não será necessário já que os drivers ajustam as flags corretas por si só.

endereço
O nome ou endereço IP da máquina (um nome de máquina será traduzido para um endereço IP) da interface. Este parâmetro é necessário, apesar da sintaxe atualmente não requisitá-lo.

ARQUIVOS
/proc/net/socket
/proc/net/dev


Depois de configurar e Levantar o serviço vamos testar o funcionamento dando um ping externo para um site qualquer www.globo.com

Assim:

urutau@urutec ~ $ ping www.globo.com
PING www.globo.com (186.192.82.163) 56(84) bytes of data.
64 bytes from 186-192-82-163.ptr.globo.com (186.192.82.163): icmp_seq=1 ttl=248 time=13.1 ms
64 bytes from 186-192-82-163.ptr.globo.com (186.192.82.163): icmp_seq=2 ttl=248 time=13.9 ms
64 bytes from 186-192-82-163.ptr.globo.com (186.192.82.163): icmp_seq=3 ttl=248 time=14.7 ms
64 bytes from 186-192-82-163.ptr.globo.com (186.192.82.163): icmp_seq=4 ttl=248 time=15.1 ms
64 bytes from 186-192-82-163.ptr.globo.com (186.192.82.163): icmp_seq=5 ttl=248 time=12.4 ms
64 bytes from 186-192-82-163.ptr.globo.com (186.192.82.163): icmp_seq=6 ttl=248 time=13.1 ms
64 bytes from 186-192-82-163.ptr.globo.com (186.192.82.163): icmp_seq=7 ttl=248 time=13.7 ms
64 bytes from 186-192-82-163.ptr.globo.com (186.192.82.163): icmp_seq=8 ttl=248 time=14.0 ms
^C
--- www.globo.com ping statistics ---
8 packets transmitted, 8 received, 0% packet loss, time 7010ms
rtt min/avg/max/mdev = 12.444/13.800/15.101/0.820 ms
urutau@urutec ~ $

OK nossa placa já esta instalada configurada e funcionando perfeitamente, veja ao final que foram transmitidos 8 pacotes recebidos 8 pacotes sem nenhuma perda.

Para a implementação de uma rede, precisaremos de um servidor, este obrigatoriamente deverá t er no mínimo duas placas de rede, uma para a conexão externa e outra para conexão com os host internos.

Alguns truques de configuração de placas de redes.
Veremos isso no próximo post.



sexta-feira, 1 de julho de 2016

Linux Como mudar o hostname via linha de comando

Linux Como mudar o hostname via linha de comando

abrindo o terminal para que possamos executar o comando (Ctrl + Alt + T), ou atraveś do menu de arquivos, o hostname não padrão e  em algumas distros e preciso instalar o programa, para checar se o mesmo esta instalado e só digitar hostname
 Edson@edTec#hostname
 edTec

Para fazer a alteração o comando e bem simples:
hostname  "novo nome"
 Edson@edTec#hostname Tec-Ed



Edson@edTec#hostname
Tec-Ed
  O procedimento também pode ser feito configurando o arquivo /etc/hosts   
primeiro vamos checar para ver se as configuraões foram alteradas

nano /etc/hosts




 GNU nano 2.2.6              File: /etc/hosts                                

127.0.0.1       localhost
127.0.1.1       edson-Tec.

# The following lines are desirable for IPv6 capable hosts
::1     ip6-localhost ip6-loopback
fe00::0 ip6-localnet
ff00::0 ip6-mcastprefix
ff02::1 ip6-allnodes
ff02::2 ip6-allrouters
                [ Read 9 lines (Warning: No write permission) ]
^G Get Help  ^O WriteOut  ^R Read File ^Y Prev Page ^K Cut Text  ^C Cur Pos
^X Exit      ^J Justify   ^W Where Is  ^V Next Page ^U UnCut Text^T To Spell
                                                            

   



Para alterar o hostname e so editar a linha e digitar o novo hostname.
Se houver alguma referência ao hostname antigo neste arquivo, altere-o para o novo nome.
127.0.1.1   Matrix-Server
Em seguida, grave o arquivo com Ctrl + O e saia do editor com Ctrl + X.
Agora, para que as mudanças tenham efeito em todo o sistema, você precisa reiniciar o computador.
Se preferir,pode-se  apenas reiniciar o hostname, assim:
sudo /etc/init.d/hostname stop
sudo /etc/init.d/hostname start