terça-feira, 28 de outubro de 2008

Criando sub-redes

Segmentar uma rede em sub-redes é interessante quando é necessário otimizar o tráfego de rede e possuir um controle maior sobre ela. Pode-se dividir a rede de acordo com os setores de uma empresa por exemplo. Para que essas sub-redes tenham comunicação será necessário um roteador/firewall.

Exemplo:

Considere o seguinte endereço de rede 192.168.1.0/24. Essa rede será dividida em dois segmentos. Para isso, é necessário trabalhar apenas com o último octeto da máscara de rede (pois é um IP da classe C). Sabe-se que para aumentar o número de sub-redes é necessário acrescentar o bit 1 no último octeto. Para dividir uma rede em dois segmentos precisa-se fazer que a máscara de rede seja:
11111111.11111111.11111111.10000000 (25 bits setados com 1)

Provando:

Número de redes = 2 elevado = 2 elevado 1 = 2
Número de hosts = 2 elevado = 2 elevado 7 = 128 – 2 = 126

Porque subtrair 2 de 255?

Um endereço é reservado para a rede e o outro para broadcast. Como é uma máscara de classe C, temos os possíveis endereços: 192.168.0.1 a 192.168.0.254 (253 hosts).

Logo, a regra é: 2 elevado N = X

No qual X é o número de subredes que quero.

Se quero duas subredes:
2 elevado N = 2 -> N=1
Então, precisa-se de 1 bit setado no último octeto.

Subrede 1
Endereço de rede: 192.168.1.0
Broadcast: 192.168.1.127
Hosts variando de 1 a 126
Máscara: 192.168.1.0/25

Subrede 2
Endereço de rede: 192.168.1.128
Broadcast: 192.168.1.255
Hosts variando de 129 a 254
Máscara: 192.168.1.128/25

Observe o esquema abaixo:


Introdução


Configurando roteamento estático

1.Configuração das duas interfaces do roteador:

# ifconfig eth0 192.168.1.1 netmask 255.255.255.128 broadcast 192.168.1.127
# ifconfig eth1 192.168.1.129 netmask 255.255.255.128 broadcast 192.168.1.255

2.Caso tenha apenas uma interface, podemos usar o ip virtual e configurar dois endereços para essa interface, conforme exemplo abaixo:

# ifconfig eth0 192.168.1.1 netmask 255.255.255.128 broadcast 192.168.1.127
# ifconfig eth0:0 192.168.1.129 netmask 255.255.255.128 broadcast 192.168.1.255

3.Consulte se seu sistema permite repasse entre as interfaces de rede. Para isso, o valor da diretriz ip_forward deve ser 1:

# sysctl -a | grep ip_forward

4.Execute o comando ping para o endereço de broadcast:

# ping 192.168.1.255

5.Use o comando arp para identificar o endereço mac dos hosts que estão ativos em sua rede:

# arp -an

6.Podemos alter em tempo de execução caso seja necessário:

# sysctl -w net.ipv4.ip_forward=1

7.Outra forma para habilitar o forward (repasse) de pacotes:

# echo 1 > /proc/sys/net/ipv4/ip_forward
# cat /proc/sys/net/ipv4/ip_forward

8.Outra forma interessante é inserir uma entrada no arquivo /etc/sysctl.conf:

# echo net.ipv4.ip_forward=1 >> /etc/sysctl.conf
# sysctl -p /etc/sysctl.conf
# cat /proc/sys/net/ipv4/ip_forward

Configurando as estações nas subredes:

1.Configurando um host na subrede 192.168.1.0/25:

# ifconfig eth0 192.168.1.2 netmask 255.255.255.128 broadcast 192.168.1.127

2.Para a rede 192.168.1.0/25 o gateway deve ser 192.168.1.1:

# route add default gw 192.168.1.1
# route -n
# netstat -rn

3.Configurando um host na subrede 192.168.1.128/25:

# ifconfig eth0 192.168.1.129 netmask 255.255.255.128 broadcast 192.168.1.255

4.Para a rede 192.168.1.128/25 o gateway deve ser 192.168.1.129:

# route add default gw 192.168.1.129
# route -n
# netstat -rn

0 comentários: