quinta-feira, 2 de dezembro de 2010

Calcular máscara de sub-redes

O que é???
Em uma definição simples: A máscara de sub-redes é o que nos permite subdividir uma rede, que originalmente, teria 256 números de ip's em redes menores com quantidades menores de hosts.
Os computadores de uma mesma rede podem, por padrão, "ver" os outros computadores da mesma rede, mas não podem ver computadores de redes diferentes. Essa definição é generalizada aqui, pois até tem como o computador de uma rede ver o da outra, mas isso não é tão simples. (Escreverei sobre isso futuramente)
A máscara de sub-rede é definida da mesma forma que o endereço IP, ou seja, por um número formado por 4 posições que podem possuir números de 0 a 255 (seguindo algumas regras).
Por exemplo:
     IP = 192.168.0.15                        NetMask= 255.255.255.0

Na verdade, no valores da máscara só se pode colocar os números 0, 128, 192, 224, 240, 248 e 252 e no número do IP os valores vão de 0 a 255.

Então como calcular o valor correto para se colocar em uma máscara de sub-rede??
Basei-se no valor 256 que é equivalente a 0 (sim, zero) IP's em uma rede que, claro, não será usado normalmente, a primeira quantidade realmente válida de ip's é 04, ou seja, vc pode ter 64 redes com 04 IP's cada uma e para uma rede desse tamanho fazemos o seguinte cálculo:
Subtraimos o número de hosts que queremos do valor 256, então, 256 - 4 = 252, o número obtido será o número usado na máscara de sub-rede, ficando assim: 255.255.255.252. Com essa máscara de sub-rede eu posso ter dentro de um mesmo conjunto até 64 redes mudando apenas o último valor do IP que estarão agrupados de 4 em 4.
     Exemplos:
         IP = 192.168.0.1    Netmask=255.255.255.252
          # Faria parte dessa rede os IP's 192.168.0.0, 192.168.0.1, 192.168.0.2 e 192.168.0.3.

A quantidade de números de IP's, a partir de 4, vai dobrando e o cálculo é equivalente.

Assim:
     Uma rede com 8 IP's calcularia-mos da seguinte forma:
     256 - 8 = 248.         --------   256 / 8 = 32
     A mascara de sub-rede seria 255.255.255.248 e poderia-mos ter 32 sub-redes.
     Exemplo:
          IP = 192.168.0.0          Netmask= 255.255.255.248
          * Essa sub-rede iria de 192.168.0.0 a 192.168.0.7

Conclusão:
     Esse texto é só uma introdução, não vou entrar no assunto de números de rede e broadcast que são importantes também, mas nesse post me propus apenas a explicar como se calcula a máscara de sub-rede de uma maneira simples.
     Para os mais apressados que estiverem conectados a internet no momento que cria sua sub-rede pode usar o site http://www.subnet-calculator.com/ para calcular corretamente suas sub-redes.

quinta-feira, 18 de novembro de 2010

Rota de gateway persistente!

No momento de se configurar um servidor gateway, uma das coisas que dá uma certa dor de cabeça é o simples roteamento padrão. Esse roteamento é feito pelo comando route ("route add default gw").
Mas o problema inicial é como fazer isso de forma fixa.
Uma das maneira, muito usada aliás, é colocar o comanto route no arquivo local.rc. Essa prática não gera problemas mas não é muito didática, ela funciona mais como um "quebra-galho".

A maneira correta de fazêlo, no Debian, é colocar esse parâmetro dentro do arquivo /etc/network/interfaces para que todas as configurações de rede fiquem dentro de um mesmo local. Esse arquivo é dividido em seções iniciadas pelo nome de cada interface a ser configurada. Nesse post não vou me apegar as configurações completas (não na primeira versão) desse arquivo.
Para definir a rota padrão dentro desse arquivo, logo abaixo das configurações da inteface ligada a internet coloque o seguinte comando:
"post-up route add -net "rede" netmask "máscara" gw "gateway"
Onde:
: É o número do ip definido como "rede" no range que a placa em questão está configurada;
: É a máscara dessa mesma rede;
: É o gateway da rede que será utilizado como rota.

Falarei mais sobre roteamento em um outro post em breve.

terça-feira, 24 de agosto de 2010

Iniciar modo gráfico no Debian com placa via

"Debian - A saga : Primeiro episódio"
Esse é meu primeiro artigo relacionado ao Debian. Como sempre, tudo é simples até que a gente se dispõe a fazer.
Nessa semana fiz o meu primeiro servidor em Debian e tudo foi ligeiramente fácil e, todo contente, segui para o segundo que acabou enroscando...

Fiz toda a instalação "como manda o figurino", avaliei o caso e criei as partições conforme a necessidade, difini os pacotes e tudo foi devidamente instalado, mas no momento que foi inicializar o modo gráfico, bum, não iniciou. Então comecei a tentar identificar  o que ocorreia e pesquisar no google as possívies soluções, como nada é fácil pra mim não achei nenhuma solução pronta então lendo vários artigos (alguns em inglês) concluí que deveria usar o driver da Via chamado "xserver-xorg-video-via", uma conclusão hipotéticamente óbvia (pra quem sabia que ele existia, claro rsrsr), instalei-o via apt-get e achei na net um xorg.conf que coloco abaixo:
Section "Files"
    FontPath    "/usr/share/X11/fonts/misc"
    FontPath    "/usr/share/X11/fonts/cyrillic"
    FontPath    "/usr/share/X11/fonts/100dpi/:unscaled"
    FontPath    "/usr/share/X11/fonts/75dpi/:unscaled"
    FontPath    "/usr/share/X11/fonts/Type1"
    FontPath    "/usr/share/X11/fonts/100dpi"
    FontPath    "/usr/share/X11/fonts/75dpi"
    FontPath    "/usr/share/fonts/X11/misc"
    # path to defoma fonts
    FontPath    "/var/lib/defoma/x-ttcidfont-conf.d/dirs/TrueType"
EndSection

Section "Module"
    Load    "i2c"
    Load    "bitmap"
    Load    "ddc"
    Load    "dri"
    Load    "extmod"
    Load    "freetype"
    Load    "glx"
    Load    "int10"
    Load    "type1"
    Load    "vbe"
EndSection

Section "InputDevice"
    Identifier    "Generic Keyboard"
    Driver        "kbd"
    Option        "CoreKeyboard"
    Option        "XkbRules"    "xorg"
    Option        "XkbModel"    "pc105"
    Option        "XkbLayout"    "lv"
    Option        "XkbOptions"    "lv3:ralt_switch"
EndSection

Section "InputDevice"
    Identifier    "Configured Mouse"
    Driver        "mouse"
    Option        "CorePointer"
    Option        "Device"        "/dev/input/mice"
    Option        "Protocol"        "ExplorerPS/2"
    Option        "ZAxisMapping"        "4 5"
    Option        "Emulate3Buttons"    "true"
EndSection

Section "InputDevice"
  Driver        "wacom"
  Identifier    "stylus"
  Option        "Device"        "/dev/wacom"          # Change to
                                                      # /dev/input/event
                                                      # for USB
  Option        "Type"          "stylus"
  Option        "ForceDevice"   "ISDV4"               # Tablet PC ONLY
EndSection

Section "InputDevice"
  Driver        "wacom"
  Identifier    "eraser"
  Option        "Device"        "/dev/wacom"          # Change to
                                                      # /dev/input/event
                                                      # for USB
  Option        "Type"          "eraser"
  Option        "ForceDevice"   "ISDV4"               # Tablet PC ONLY
EndSection

Section "InputDevice"
  Driver        "wacom"
  Identifier    "cursor"
  Option        "Device"        "/dev/wacom"          # Change to
                                                      # /dev/input/event
                                                      # for USB
  Option        "Type"          "cursor"
  Option        "ForceDevice"   "ISDV4"               # Tablet PC ONLY
EndSection

Section "Device"
    Identifier    "VIA Technologies, Inc. S3 Unichrome Pro VGA Adapter"
    Driver        "via"
    BusID        "PCI:1:0:0"
EndSection

Section "Monitor"
    Identifier    "SyncMaster"
    Option        "DPMS"
EndSection

Section "Screen"
    Identifier    "Default Screen"
    Device        "VIA Technologies, Inc. S3 Unichrome Pro VGA Adapter"
    Monitor        "SyncMaster"
    DefaultDepth    24
    SubSection "Display"
        Depth        1
        Modes        "1024x768" "800x600" "640x480"
    EndSubSection
    SubSection "Display"
        Depth        4
        Modes        "1024x768" "800x600" "640x480"
    EndSubSection
    SubSection "Display"
        Depth        8
        Modes        "1024x768" "800x600" "640x480"
    EndSubSection
    SubSection "Display"
        Depth        15
        Modes        "1024x768" "800x600" "640x480"
    EndSubSection
    SubSection "Display"
        Depth        16
        Modes        "1024x768" "800x600" "640x480"
    EndSubSection
    SubSection "Display"
        Depth        24
        Modes        "1024x768" "800x600" "640x480"
    EndSubSection
EndSection

Section "ServerLayout"
    Identifier    "Default Layout"
    Screen        "Default Screen"
    InputDevice    "Generic Keyboard"
    InputDevice    "Configured Mouse"
    InputDevice     "stylus" "SendCoreEvents"
    InputDevice     "cursor" "SendCoreEvents"
    InputDevice     "eraser" "SendCoreEvents"
EndSection

Section "DRI"
    Mode    0666
EndSection


Até o momento vou só deixar isso aqui pra complementar posteriormente, já são 23:54h e estou cansado. Adicionarei novos detalhes em breve... se tiver erro de digitação, desculpe-me vai ficar assim por enquanto.

terça-feira, 10 de agosto de 2010

Cores no terminal

É bem cômodo que ao utilizar o terminal tenhamos o esquema de cores sendo mostrado, e o conteúdo sendo mostrado com as seguintes cores:

Arquivos de texto:       "branco";
Arquivos executáveis: "verde";
Links dinâmicos:          "ciano";
Diretórios:                    "azul".
Dispositivos:                "amarelo".

Existem outros outras cores, que não me lembro exatamente agora.

Algumas distros isso já vem configurado como padrão, mas em outras não, então se você quer usar esse esquema uma maneira simples de fazê-lo e criar um alias para o comando ls, com o seguinte comando:

     alias ls="ls --color=auto"

Para ser mais eficiente, pode colocar isso no rc.local, assim essa configuração estará ativa sempre que iniciar o computador.

quinta-feira, 8 de abril de 2010

Turbinando o Firefox

Por enquanto é mais um "copiar/colar" só pra consultas futuras.
O link original é esse "http://www.piratalivre.com.br/novo/blog/category/hacking/"
 Funcionou muito bem!!!

Este artigo visa mostrar algumas dicas colhidas na net para otimizar o firefox, para ajudar à todas aquelas pessoas que acham o Firefox pesado tornar ele mais rápido. A necessidade disto veio por causa de um dos projetos o qual esta ferramenta estava consumindo muito processamento e memória.

Segue as configurações mudadas e os processo que utilizamos no projeto.( Lembrete antes de fazer as alterações faça backups )

Inicialmente trabalhamos com a sessão de configuração do firefox que pode ser acessada por about:config dentro do seu browser.

Flags modificadas para obter melhor desempenho:

Nome:content.notify.interval
Type: Integer
Value: 2000000
Chave: Teve que ser criada manualmente

- Diminui o intervalo de renderização das paginas do firefox

Nome:content.notify.ontimer
Type: Boolean
Value: true
Chave: Teve que ser criada manualmente

- É uma chave dependente para ativar o content.notify.interval

Nome: browser.tabs.closeButtons
Type: interger
Value: 0 (valor opcional, você pode tentar outros valores citados acima) (valor padrão: 1) (valores opcionais: 0, 1, 2, 3)

- Aqui vem uma das partes que as pessoas não percebem mas consome bastante memória e desempenho botão de fechar nas abas com a opção 0 este botão somente aparece na janela corrente.

Nome: browser.cache.memory.enable
Status: user set
Type: boolean
Value: false

- A chave milagrosa a que deixa o firefox rápido pra caramba, esta chave habilita o cache de memória do firefox nada de ficar sobrecarregando e criando firefox utilizando 100 ou mais de ram.

Nome: browser.sessionhistory.max
Nome: browser.sessionhistory.max_total_viewersStatus: user set
Type: integer
Value: 0 (valor opcional, desativa o cache completamente)


- Reduz o tamanho do cache de memória do histórico .

Para fazer com que estas flags sejam ativas para todos o usuários do firefox é necessário mudar os arquivos que mantém a configuração:

No arquivo defaults/pref/firefox.js altere a linha para o valor 0

pref(”browser.tabs.closeButtons”, 0);

E inseridas as linhas no final do arquivo

pref(”content.notify.ontimer”,true);
pref(”content.notify.interval”,2000000);

No arquivo /usr/lib/firefox/greprefs/all.js

pref(”browser.cache.memory.enable”, false);
pref(”browser.sessionhistory.max_total_viewers”, 0);

Pronto agora você está com o seu firefox Tunado esse sim é um 2.0 XD

Agradecimentos ao Cidoloco e a sua publicação no fórum do slackbr, a comunidade do Slackware e principal ao autor do artigo na computerworld.

sábado, 6 de fevereiro de 2010

Mais terminais tty no Slackware

No Slackware 12 iniciado no modo 4 (gráfico) não adianta usar os comandos Ctrl+Alt+F2 ... Ctrl+Alt+F5, pois nesse modo os terminais estão desativados.
Para resolver isso devemos alterar o conteúdo do arquivo /etc/inittab da seginte forma:

Abra o arquivo e localize as linhas:
   # These are the standard console login getties in multiuser mode:
    c1:1235:respawn:/sbin/agetty 38400 tty1 linux
    c2:1235:respawn:/sbin/agetty 38400 tty2 linux 
    c3:1235:respawn:/sbin/agetty 38400 tty3 linux
    c4:1235:respawn:/sbin/agetty 38400 tty4 linux
    c5:1235:respawn:/sbin/agetty 38400 tty5 linux
    c6:12345:respawn:/sbin/agetty 38400 tty6 linux



 * Observer que no ítem c6 os números são 1, 2, 3, 4 e 5 que significa que o terminal tty6 está ativo para todos os modos, mas os de c1 a c5 não estão ativo para o modo 4.
Então basta alterar isso para:
   # These are the standard console login getties in multiuser mode:
   c1:12345:respawn:/sbin/agetty 38400 tty1 linux
   c2:12345:respawn:/sbin/agetty 38400 tty2 linux
   c3:12345:respawn:/sbin/agetty 38400 tty3 linux
   c4:12345:respawn:/sbin/agetty 38400 tty4 linux
   c5:12345:respawn:/sbin/agetty 38400 tty5 linux
   c6:12345:respawn:/sbin/agetty 38400 tty6 linux


Reinicie o computador e vc poderá usar todos os terminais.