quinta-feira, 26 de novembro de 2015

Estatísticas do uso de memória e disco com vmstat

vmstat é uma das mais tradicionais ferramentas para analisar o uso de memória, disco e I/O no Linux. Seu uso é simples.

$ vmstat 
procs -----------memory---------- ------------swap-- -----io---- -system-- ------cpu-----
 r   b  swpd  free           buff       cache      si  so      bi  bo       in   cs       us  sy  id   wa st
 0  0         0  1290852  168412  2444644  0  0        15 1         23  13       6   2    90  1   0

Nesta tela vemos que temos 1290852 de memória livre (1,2Gb), não estou usando memória virtual e o processador está com 6% de processamento.

Com a opção "-a" vemos a memória ativa e inativa.

$ vmstat -a
procs -----------memory---------- ------------swap-- -----io---- -system-- ------cpu-----
r   b   swpd   free          inact       active       si   so    bi    bo   in   cs       us  sy  id  wa  st
1  0          0   1308492 1566532  3565632  0    0     15    1    22    9       6    2   90  1    0


Com "-d" vemos o uso do disco.

$ vmstat -d
disk- ------------reads----------------------- ------------writes----------------------------------- -----IO------
        total       merged  sectors       ms            total         merged    sectors        ms               cur  sec
sda  859697  191835   43159119  8098016  6628179  2719813  174504051 969743840  0     20324
sr0   0            0            0                0               0              0              0                 0                  0     0

No caso improvável da tua distribuição não ter o vmstat você pode instalá-lo com o comando abaixo.

# apt-get install procps

quinta-feira, 19 de novembro de 2015

Sexta edição do Fórum Brasileiro de IPv6

"A sexta edição do Fórum Brasileiro de IPv6 acontece no dia 9 de dezembro (quarta-feira) com a proposta de apresentar o andamento das ações de implantação do novo protocolo no Brasil e no mundo. O estoque central de endereços IPv4 na América Latina e Caribe esgotou-se no dia 10 de junho do ano passado, entrando na fase de “terminação gradual”. Neste ano, o estoque está quase entrando na última fase de esgotamento, situação que só permitirá a novos membros a aquisição de endereços IPv4. Tendo em vista isso, muitos provedores já começaram a implantar IPv6 em 2015, fazendo com que o Brasil alcançasse patamares expressivos no tráfego do IPv6 ! O ano de 2016 promete ser marcado por mais avanços significativos na adoção do IPv6 no país!"

Quem quiser participar (presencial ou on-line) basta de inscrever gratuitamente no site http://ipv6.br/post/sexta-edicao-do-forum-brasileiro-de-ipv6/

Pena que eu não estarei em São Paulo neste dia!

quarta-feira, 18 de novembro de 2015

Medindo o desempenho da rede com Iperf

O Iperf é uma ferramenta simples para medir o desempenho da rede, ou de um servidor. Seu uso é simples:

$ iperf -p 80 -c 172.20.1.82
------------------------------------------------------------
Client connecting to 172.20.1.82, TCP port 80
TCP window size: 43.8 KByte (default)
------------------------------------------------------------
[  3] local 172.20.120.4 port 35177 connected with 172.20.1.82 port 80
[ ID] Interval       Transfer     Bandwidth
[  3]  0.0-10.0 sec  1.01 GBytes   871 Mbits/sec

Com o comando acima eu testo o desempenho do servidor web 172.20.1.82.

Pesquise outras opções com iperf --help. O Iperf está disponível na maioria das distribuições Linux e, no Debian, pode ser instalado com o comando:

# apt-get install iperf

* Artigo publicado em 04/11/2011. Atualizado e corrigido.

terça-feira, 17 de novembro de 2015

Dificuldades para calcular sub-redes? Use IPCalc

Quem administra uma rede de computadores de vêz em quando se vê as voltas com endereçamentos de rede, máscaras de sub-rede e roteamentos. Principalmente quando sua empresa recebe um bloco de endereços públicos e a operadora diz algo assim:


  • Rede: 200.136.27.0/25
  • Gateway: 200.136.27.1


e seu chefe diz: Precisamos dividir isso em 8 sub-redes. Então você, administrador de rede, precisa calcular onde cada rede começa e onde termina, quais os endereços de rede e broadcast, quantos hosts cabem em cada sub-rede, etc.

Para facilitar isso foi criado o IPCalc. No Debian ele pode ser instalado via apt-get.

Para resolver o caso acima, basta chamar o ipcalc que ele de mostra as configurações e limites de cada sub-rede. Digite:

$ ipcalc 200.136.27.0/25 28
Address:   200.136.27.0         11001000.10001000.00011011.0 0000000
Netmask:   255.255.255.128 = 25 11111111.11111111.11111111.1 0000000
Wildcard:  0.0.0.127            00000000.00000000.00000000.0 1111111
=>
Network:   200.136.27.0/25      11001000.10001000.00011011.0 0000000
HostMin:   200.136.27.1         11001000.10001000.00011011.0 0000001
HostMax:   200.136.27.126       11001000.10001000.00011011.0 1111110
Broadcast: 200.136.27.127       11001000.10001000.00011011.0 1111111
Hosts/Net: 126                   Class C

Subnets after transition from /25 to /28

Netmask:   255.255.255.240 = 28 11111111.11111111.11111111.1111 0000
Wildcard:  0.0.0.15             00000000.00000000.00000000.0000 1111

 1.
Network:   200.136.27.0/28      11001000.10001000.00011011.0000 0000
HostMin:   200.136.27.1         11001000.10001000.00011011.0000 0001
HostMax:   200.136.27.14        11001000.10001000.00011011.0000 1110
Broadcast: 200.136.27.15        11001000.10001000.00011011.0000 1111
Hosts/Net: 14                    Class C

 2.
Network:   200.136.27.16/28     11001000.10001000.00011011.0001 0000
HostMin:   200.136.27.17        11001000.10001000.00011011.0001 0001
HostMax:   200.136.27.30        11001000.10001000.00011011.0001 1110
Broadcast: 200.136.27.31        11001000.10001000.00011011.0001 1111
Hosts/Net: 14                    Class C

 3.
Network:   200.136.27.32/28     11001000.10001000.00011011.0010 0000
HostMin:   200.136.27.33        11001000.10001000.00011011.0010 0001
HostMax:   200.136.27.46        11001000.10001000.00011011.0010 1110
Broadcast: 200.136.27.47        11001000.10001000.00011011.0010 1111
Hosts/Net: 14                    Class C

 4.
Network:   200.136.27.48/28     11001000.10001000.00011011.0011 0000
HostMin:   200.136.27.49        11001000.10001000.00011011.0011 0001
HostMax:   200.136.27.62        11001000.10001000.00011011.0011 1110
Broadcast: 200.136.27.63        11001000.10001000.00011011.0011 1111
Hosts/Net: 14                    Class C

 5.
Network:   200.136.27.64/28     11001000.10001000.00011011.0100 0000
HostMin:   200.136.27.65        11001000.10001000.00011011.0100 0001
HostMax:   200.136.27.78        11001000.10001000.00011011.0100 1110
Broadcast: 200.136.27.79        11001000.10001000.00011011.0100 1111
Hosts/Net: 14                    Class C

 6.
Network:   200.136.27.80/28     11001000.10001000.00011011.0101 0000
HostMin:   200.136.27.81        11001000.10001000.00011011.0101 0001
HostMax:   200.136.27.94        11001000.10001000.00011011.0101 1110
Broadcast: 200.136.27.95        11001000.10001000.00011011.0101 1111
Hosts/Net: 14                    Class C

 7.
Network:   200.136.27.96/28     11001000.10001000.00011011.0110 0000
HostMin:   200.136.27.97        11001000.10001000.00011011.0110 0001
HostMax:   200.136.27.110       11001000.10001000.00011011.0110 1110
Broadcast: 200.136.27.111       11001000.10001000.00011011.0110 1111
Hosts/Net: 14                    Class C

 8.
Network:   200.136.27.112/28    11001000.10001000.00011011.0111 0000
HostMin:   200.136.27.113       11001000.10001000.00011011.0111 0001
HostMax:   200.136.27.126       11001000.10001000.00011011.0111 1110
Broadcast: 200.136.27.127       11001000.10001000.00011011.0111 1111
Hosts/Net: 14                    Class C


Subnets:   8
Hosts:     112

Aí estão as 8 redes, cada uma com 14 hosts. 

Se quiser algo mais bonitinho, o ipcalc tem uma página CGI que pode ser acessa pelo endereço http://servidor/cgi-bin/ipcalc.


Também fiz uma calculadora de sub-rede para endereços IPv6. Você pode acessá-la pelos links abaixo.


* Artigo publicado em 31/07/2012. Atualizado e corrigido.

sexta-feira, 6 de novembro de 2015

iptables para IPv6

Ao instalar o iptables você também instala o ip6tables, que nada mais é do que um firewall voltado para o protocolo IPv6. A sintaxe é a mesma do iptables.

Por exemplo, para liberar o ICMP digite o comando:

# ip6tables -A INPUT -p icmpv6 -j ACCEPT

Lembrando que, ao contrário do IPv4, você não pode bloquear todo o tráfego ICMP em uma rede IPv6 pois as resoluções de endereço físico, que eram feitas pelo ARP no IPv4, agora são feitas pelo ICMP no IPv6.

Para habilitar o statefull, digite:

# ip6tables -A FORWARD -m state --state ESTABLISHED,RELATED -j ACCEPT

Liberar o acesso de uma máquina é simples:

# ip6tables -A FORWARD -d 2001:470:db7e:8000::3 -p tcp --dport 80 -j ACCEPT

Como podemos ver, a sintaxe é a mesma, inclusive para a tabela de NAT. Apesar de não ser necessário usar NAT no IPv6 em algumas situações ele pode ser útil, como em técnicas de transição.

quinta-feira, 5 de novembro de 2015

Semana do Linux

Entre os dias 9 e 13 de novembro vai ocorrer a Semana do Linux, um evento on-line com vários palestrantes tratando de assuntos diversos relacionados ao Linux, como redes, infraestrutura, Android, programação, Web e segurança.


No dia 10, às 16:30, haverá uma palestra minha tratando do IPv6, o novo protocolo da internet, mostrando conceitos, práticas e os problemas que estou enfrentando na adoção do protocolo.

Quem quiser participar do evento pode se inscrever gratuitamente no site abaixo.



quarta-feira, 4 de novembro de 2015

Lançamento do meu livro

Como havia informado, no último dia 3 de novembro a Novatec lançou o meu livro "Administração de redes Linux'.


Esse livro é baseado na vasta coleção de artigos, dicas e posts que publiquei ao longo de quase 10 anos. A idéia surgiu na época da faculdade e só agora se torna relalidade.

Quem quiser saber mais detalhes do livro é só clicar no link abaixo.