quarta-feira, 23 de maio de 2012

Configurar dois roteadores em cascata - LAN - WAN


A ligação de roteadores entre si implica em provável complicação na geração de endereços IP dentro da rede interna. Para os leigos, os endereços IP pouco significam, e até para os mais instruídos usa-se a solução DHCP sem analisar contexto.

Termos

Os termos foram explicados no post anterior, mas vamos repetir, até para que você possa imprimir este tutorial..

Modem - No caso da Internet doméstica, é o nosso conector com o provedor. É como se fosse nosso aparelho telefônico. Os bons já vem configurados com o usuário e senha internamente, para que o usuário não tenha que guardar em anotações e um dia precisar ligar para o SAC da provedora pedindo os dados. Ele também controla as indas e vindas dos pacotes de Internet.

Roteador - A princípio, ele é um compartilhador do sinal de Internet. Serve para possibilitar à sua família a divisão do ponto de Internet entre todos (que tenham computador, smartphone, notebook). No entanto, ele faz mais do que isto. Ele estabelece uma nova rede na sua casa, com regras próprias, números IPs próprios e sinal WiFi, além de características de segurança contra o meio externo.

WAN - Quando nos referirmos à WAN, estamos referenciando a GRANDE rede de usuários que está conectada ao provedor. Quando o cabo da provedora de Internet chega ao seu modem, esta WAN é interrompida, e estabelecida uma pseudo-WAN entre o modem e os roteadores domésticos. No caso da maioria dos modems, a WAN começa com o endereço 192.168.1.1, o mesmo que digitamos no browser (http://192.168.1.1) para configurar o modem.

LAN - Depois do roteador, ou seja, nas saídas (geralmente 4 portas), fica estabelecida a sua rede doméstica. Daí para dentro você deve estabelecer uma nova rede com prefixo diferente de 192.168.1, para deixar as coisas bem separadas e evitar conflitos.

A - Roteador 1

O Roteador 1 (ligado à WAN) é um legítimo TP-LINK com duas antenas. As configurações são:

Ele vem de fábrica com IP padrão 192.168.1.1, que colide com o IP dos modems das operadoras. A primeira providência é trocar este endereço para 192.168.10.11 (primeiro roteador):

Cabo

O cabo do modem vai no slot RJ45 de entrada WAN, e o do computador usado para configurá-lo vai em qualquer slot LAN.

LAN

IP: 192.168.10.11
Máscara: 255.255.255.0 (Classe C)

WAN

Deixe o IP dinâmico. Como o modem é 192.168.1.1, provavelmente ele vai assumir o endereço 192.168.1.2, a não ser que você possua mais de um roteador primário no local de sua LAN.

B - Roteador 2

O roteador secundário é um antigo Pacific Networks, chinês legítimo. Desligue o cabo que vem do modem para a porta WAN do roteador mestre, pois você pode ter feito tentativas de ligação e um cabo pode ter sobrtado ligado. Ligue o cabo de rede do micro configurador num slot LAN deste roteador secundário. Tenha paciência, pois este também vem com IP 192.168.1.1. Na tela de configuração da LAN, altere para 192.168.2.1.

Aqui fica evidente o significado do número IP na definição de uma OUTRA REDE. Colocando nele o endereço 192.168.2.1, estabelece-se uma nova rede, com uma nova contagem para os computadores a ela adicionados.

LAN

IP: 192.168.2.1
Máscara: 255.255.255.0 (Classe C)

WAN

Coloque o IP dinâmico. Isto significa que, com base no endereço do roteador, ele vai gerar novos endereços para os outros computadores, sem colidir com nenhum endereço da rede estabelecida pelo roteador 1.

Não se apavore se, no painel de status do software deste roteador não aparecerem parâmetros preenchidos.

Feito isto, reconecte o roteador mestre na WAN, coloque um cabo no slot LAN do mestre e conecte a um slot WAN do roteador secundário.

Desligue modem e roteadores. Religue o modem e aguarde um pouco. Religue o roteador mestre e aguarde um pouco, enquanto testa se a Internet está funcionando no micro principal (ligado ao roteador mestre). Ligue o roteador secundário e aguarde, pois sua conexão à Internet pode demorar um pouco mais do que a do mestre.

Está pronto.

IMPORTANTE:

Tentar alterar o IP dos roteadores com o cabo WAN do modem (192.168.1.1) vai lhe dar uma enorme dor de cabeça, pois os IPs são iguais, e a rede enlouquece.

E do terceiro roteador em diante ?

O procedimento deve ser o mesmo do roteador 2. Eles terão o IP dinâmico e crescente, para manter a coerência. O próximo poderá ser o 192.168.3.1 e assim por diante.

A vantegem deste método é a de não perder 2 portas LAN.

terça-feira, 22 de maio de 2012

Configurando Rede Wireless com dois roteadores - LAN a LAN

A ligação de roteadores entre si implica em provável complicação na geração de endereços IP dentro da rede interna. Para os leigos, os endereços IP pouco significam, e até para os mais instruídos usa-se a solução DHCP sem analisar contexto.

Termos

Vamos explicar os termos relacionados a modems e roteadores para leigos.

Modem - No caso da Internet doméstica, é o nosso conector com o provedor. É como se fosse nosso aparelho telefônico. Os bons já vem configurados com o usuário e senha internamente, para que o usuário não tenha que guardar em anotações e um dia precisar ligar para o SAC da provedora pedindo os dados. Ele também controla as indas e vindas dos pacotes de Internet.

Roteador - A princípio, ele é um compartilhador do sinal de Internet. Serve para possibilitar à sua família a divisão do ponto de Internet entre todos (que tenham computador, smartphone, notebook). No entanto, ele faz mais do que isto. Ele estabelece uma nova rede na sua casa, com regras próprias, números IPs próprios e sinal WiFi, além de características de segurança contra o meio externo.

WAN - Quando nos referirmos à WAN, estamos referenciando a GRANDE rede de usuários que está conectada ao provedor. Quando o cabo da provedora de Internet chega ao seu modem, esta WAN é interrompida, e estabelecida uma pseudo-WAN entre o modem e os roteadores domésticos. No caso da maioria dos modems, a WAN começa com o endereço 192.168.1.1, o mesmo que digitamos no browser (http://192.168.1.1) para configurar o modem.

LAN - Depois do roteador, ou seja, nas saídas (geralmente 4 portas), fica estabelecida a sua rede doméstica. Daí para dentro você deve estabelecer uma nova rede com prefixo diferente de 192.168.1, para deixar as coisas bem separadas e evitar conflitos.

A - Roteador Mestre

O Roteador mestre (ligado à WAN) é um legítimo TP-LINK com duas antenas. As configurações são:

Ele vem de fábrica com IP padrão 192.168.1.1, que colide com o IP dos modems das operadoras. A primeira providência é trocar este endereço para 192.168.10.11 (primeiro roteador):

Cabo

O cabo do modem vai no slot RJ45 de entrada WAN, e o do computador usado para configurá-lo vai em qualquer slot LAN.

LAN

IP: 192.168.10.11
Máscara: 255.255.255.0 (Classe C)

WAN

Deixe o IP dinâmico. Como o modem é 192.168.1.1, provavelmente ele vai assumir o endereço 192.168.1.2, a não ser que você possua mais de um roteador primário no local de sua LAN.

B - Roteador secundário

O roteador secundário é um antigo Pacific Networks, chinês legítimo. Desligue o cabo que vem do modem para a porta WAN do roteador mestre, pois você pode ter feito tentativas de ligação e um cabo pode ter sobrtado ligado. Ligue o cabo de rede do micro configurador num slot LAN deste roteador secundário. Tenha paciência, pois este também vem com IP 192.168.1.1. Na tela de configuração da LAN, altere para 192.168.10.12.

LAN


IP: 192.168.10.12
Máscara: 255.255.255.0 (Classe C)

WAN

Force o IP do tipo estático. Deixá-lo dinâmico provoca conflitos, travamento e até a perda do endereço do roteador. Se isto acontecer, o único remédio será o reset, com a perda de todas as configurações que ele tinha.


IP: 192.168.1.3
Máscara: 255.255.255.0 (Classe C)
Default Gateway: deixe como está, pois é opcional e o segundo roteador é só uma extensão do primeiro.

Feito isto, reconecte o roteador mestre na WAN, coloque um cabo no slot LAN do mestre e conecte a um slot LAN do roteador secundário.

Desligue modem e roteadores. Religue o modem e aguarde um pouco. Religue o roteador mestre e aguarde um pouco, enquanto testa se a Internet está funcionando no micro principal (ligado ao roteador mestre). Ligue o roteador secundário e aguarde, pois sua conexão à Internet pode demorar um pouco mais do que a do mestre.

Está pronto.

IMPORTANTE:

Tentar alterar o IP dos roteadores com o cabo WAN do modem (192.168.1.1) vai lhe dar uma enorme dor de cabeça, pois os IPs são iguais, e a rede enlouquece.

E do terceiro roteador em diante ?

O procedimento deve ser o mesmo do roteador secundário. Eles terão o IP estático e crescente, para manter a coerência.

Leia sobre o Roteador

segunda-feira, 7 de maio de 2012

Erro Network or server interference ocurred na TV Samsung

Os usuários das TVs Samsung estão reclamando nos foruns da Internet sobre um problema em suas TVs.

O erro ocorre na hora de se sincronizar aplicativos com o computador, à semelhança do que se faz com o iPhone, Galaxy, iPad e outros. Isto é fundamental para quem quer desenvolver aplicativos para facilitar a própria vida e ainda tentar atingir um mercado promissor de mídias.

Mas na hora de sincronizar, dá pau. Tudo ocorre porque somos uns pobres brasileiros, que por não termos nascido e estarmos vivendo fora dos Estados Unidos, não fomos contemplados com o serviço, ou seja, uma função que a Samsung tinha a obrigação de fazer funcionar. Como podemos crer nos celulares Samsung, então ?

O atendente do SAC da Samsung (telefone 4004-0000) me garantiu que, por enquanto, a função não vai funcionar no Brasil. É um absurdo. Por isto, recomendo ao leitor que NÃO COMPRE AS SMARTVs DA SAMSUNG para utilizar no Brasil. Eles fazem descaso de nós brasileiros.

Não compre as novas Smart TV LED Samsung no Brasil

Aconteceu conosco. Compramos uma TV Samsung LED no Ricardo Eletro, pois prometia ser uma escolha muito boa, superior à LG e à SONY.

Pois bem, estes novos modelos oferecem uma coisa que se chama Smart HUB, onde você se conecta a diversos serviços, que não são nada mais nada menos que gadgets (atalhos simplificados para funções) presentes nos smartphones

Até aí, tudo bem. Só que existe um outro serviço que é um que possibilita a sincronização de aplicativos, não presente nos concorrentes. Ora, configuramos tudo e fomos experimentar. Não funcionou. Conferimos a rede, os IPs, e tudo o mais. Olhamos os foruns da Internet, e tá cheio de reclamação.

Ligamos então para a Samsung, e ao final de três atendimentos (mas só dois protocolos), eles admitiram que no Brasil a coisa não funciona, só nos Estados Unidos. Tem cabimento uma coisa desta ? Ao invés de tentarem ver que o problema tem solução (pois em informática tudo tem remédio), os atendentes foram dando desculpas, e a conclusão é que no Brasil não tem jeito.

Somos ainda o Brasil colônia para os europeus, asiáticos e todo aquele que queira explorar os mercados de trouxas.

A recomendação é que o consumidor NÃO COMPRE TVs SAMSUNG SMART TV, pelo menos enquanto não se resolve este problema, que é de uma simplicidade franciscana, pois os diferenciais oferecidos podem não funcionar. O de sincronização o atendente garantiu que não funciona. Acrescente-se a isto o fato de que a Samsung, como outros, está economizando horrores em desenvolvimento de um sistema operacional próprio, pois aproveita o Linux, tão consagrado e mantido por uma comunidade de milhares de programadores e analistas no mundo inteiro, que nas novas distribuições consertam os problemas que os usuários colocam em evidência.

A Samsung está fazendo os brasileiros de bobos.

sexta-feira, 4 de maio de 2012

Lazarus Pascal - TLazIntfImage - Manipulando Bitmaps - II

Os procedimentos deste post devem ser precedidos pelos já definidos no post da parte I.

Manipulando os pixels de TLazIntfImage


     CurColor_old := SrcIntfImg.Colors[0,0];

     for py:=0 to SrcIntfImg.Height-1 do
     begin
       for px:=0 to SrcIntfImg.Width-1 do
       begin
         CurColor:=SrcIntfImg.Colors[px,py];
          TempIntfImg.Colors[px,py] := CurColor xor TColorToFPColor(clRed);
       end;
     end;

     TempIntfImg.CreateBitmaps(ImgHandle,ImgMaskHandle,false);
     TempBitmap.Handle:=ImgHandle;
     TempBitmap.MaskHandle:=Mascara.MaskHandle;
     Img1.Picture.Bitmap.Assign(TempBitmap);
     Img1.Refresh;

Percorremos (scaneamos) as linhas da imagem de cima para baixo (o ponto 0,0 é o superior esquerdo da imagem). A cada linha escaneada, scaneamos da esquerda para a direita.

No exemplo fizemos uma operação lógica xor sobre cada pixel em relação à cor vermelha. Observe o efeito em seu programa.


Código completo deste procedimento


  TempBitmap := TBitmap.Create;
     oBmp := TBitmap.Create;
     oBmp.PixelFormat:=pf32bit;
     oBmp := Img1.Picture.Bitmap;


     SrcIntfImg:=TLazIntfImage.Create(0,0);
     SrcIntfImg.LoadFromBitmap(oBmp.Handle,oBmp.MaskHandle);
     TempIntfImg:=TLazIntfImage.Create(0,0);
     TempIntfImg.LoadFromBitmap(oBmp.Handle,oBmp.MaskHandle);
     CurColor_old := SrcIntfImg.Colors[0,0];

     for py:=0 to SrcIntfImg.Height-1 do
     begin
       for px:=0 to SrcIntfImg.Width-1 do
       begin
         CurColor:=SrcIntfImg.Colors[px,py];

          TempIntfImg.Colors[px,py] := CurColor xorTColorToFPColor(clRed);
       end;
     end;

     TempIntfImg.CreateBitmaps(ImgHandle,ImgMaskHandle,false);
     TempBitmap.Handle:=ImgHandle;
     TempBitmap.MaskHandle:=ImgMaskHandle;
     Img1.Picture.Bitmap.Assign(TempBitmap);
     Img1.Refresh;
                       

quinta-feira, 3 de maio de 2012

Lazarus Pascal - TLazIntfImage - Manipulando Bitmaps - I

No Lazarus uma classe especialmente concebida manipula o mapa de pixels:

TLazIntfImage

Isto ocorre porque a classe TBitmap não manipula, incompreensivelmente, pixels.

Carregando uma imagem

Um objeto desta classe não carrega por suas próprias forças uma imagem. É preciso utilizar a classe TBitmap como auxiliar.

Declaração de variáveis

Escreva o seguinte bloco de declaração de variáveis:


var
   x, y: Integer;
   px, py: Integer;
   oBmp: TBitmap;
   ImgHandle,ImgMaskHandle, MskHandle: HBitmap;
   SrcIntfImg, TempIntfImg: TLazIntfImage;

Carrendo os bitmaps para serem manipulados


     oBmp := TBitmap.Create;
     oBmp.PixelFormat:=pf32bit;
     oBmp := Img1.Picture.Bitmap;

O formato de armazenamento de pixels deverá ser de 32 bits, para conservar a melhor qualidade possível do bitmap (pf32bit) . Um controle Image (Img1) será usado como buffer dos resultados intermediários das alterações que vamos fazer. É bem melhor que manipular as poderosas streams, pois dão apenas um terço de suas dores de cabeça.

O importante aqui é que na terceira instrução oBmp contém o Bitmap (mapa de bits) da imagem que está no controle Image. Em algum lugar este controle foi carregado com um Bitmap (tem que ser um bitmap de arquivo bmp ou de um JPG convertido para bitmap).

Carregando um bitmap com um arquivo BMP

oBmp.LoadFromFile('C:\ _____ .bmp');

Mas o que acontece frequentemente é que carregamos a região bitmap a partir de um JPG, menor e mais consagrado como padrão na Internet. Como fazer ?

Carregando um arquivo JPG

Declaramos uma variável do tipo TJPEGImage no bloco var:

oJPG:TJPEGImage;

Executamos as instruções de instanciação e de carregamento de um JPG:


    oJPG:=TJPEGImage.Create;
    oJPG.LoadFromFile( 'C:\ _____ .jpg' );

Mas agora estamos numa sinuca. O tipo para manipulação de pixels é BMP e não JPG.

Transformando um JPG num BMP


Utilize a seguinte sequência de instruções:


    oJPG:=TJPEGImage.Create;
    oJPG.LoadFromFile(  'C:\ _____ .jpg' );
    oBmp:=TBitmap.Create;
    oBmp.Width:=Largura;
    oBmp.Height:=Altura;
    oBmp.Canvas.StretchDraw(Rect(0,0,oBmp.Width-1,oBmp.Height-1),oJPG);
    oJPG.Assign(oBmp);
    oJPG.CompressionQuality:=100;



A variável oJPG contém o conteúdo trazido cru do arquivo JPG. Criamos um TBitmap e carregamos o seu canvas (superfície de desenho) com o JPG contido em oJPG. E ainda podemos descarregar a figura num retângulo pré-dimensionado. No caso, descarregamos num retângulo de Altura e Largura conhecidos, e provavelmente proporcionais às medidas originais da figura.

Carregando para a classe TLazIntfImage

Uma vez obtido o bitmap, fica fácil obter uma imagem de pixels manipuláveis TLazIntfImage:


     SrcIntfImg:=TLazIntfImage.Create(0,0);
     SrcIntfImg.LoadFromBitmap(oBmp.Handle,oBmp.MaskHandle);

 ImgHandle e ImgMaskHandle foram declaradas no início deste post como handles HBitmap do sistema operacional. Estes handles apontam para o bitmap carregado..

De agora em diante,o bitmap está em SrcIntfImg em um formato de pixels individuais e manipuláveis..

Vamos declarar mais duas instruções:


     TempIntfImg:=TLazIntfImage.Create(0,0);
     TempIntfImg.LoadFromBitmap(oBmp.Handle,oBmp.MaskHandle);

TempIntfImg será um rascunho, para não danificarmos a imagem original SrcIntfImg.

No próximo post vamos manipular os pixels.