Configurando uma rede em um servidor de porta multi-ethernet

2

Hy para todos: Acabei de instalar o Ubuntu Server 12.04.3 em um Sunfire X4100

Este servidor tem 4 portas ethernet, meu alvo é usar:

  • eth0 para conectar ao modem e assim à internet
  • eth1, eth2, eth3 para conectar algum switch e ponto de acesso para criar um lan interno, compartilhar recursos, armazenamento, impressoras, etc.

Para atingir este alvo eu instalei um servidor dhcp [apt-get install isc-dhcp-server] e usei abaixo da configuração:

/etc/default/isc-dhcp-server
 INTERFACES="eth1 eth2 eth3"

/etc/network/interfaces
auto lo
  iface lo inet loopback

auto eth0
    iface eth0 inet static
    address 192.168.1.5
    netmask 255.255.255.0
    network 192.168.1.0
    gateway 192.168.1.1
    dns-nameservers 8.8.8.8 8.8.4.4

auto eth1
    iface eth1 inet static
    address 192.168.1.5
    netmaks 255.255.255.0
    network 192.168.1.0

auto eth2
    iface eth2 inet static
    address 192.168.1.5
    netmaks 255.255.255.0
    network 192.168.1.0

auto eth3
    iface eth3 inet static
    address 192.168.1.5
    netmaks 255.255.255.0
    network 192.168.1.0

minha configuração do servidor DHCP

/etc/dhcp/dhcpd.conf
default-lease-time 600;
max-lease-time 7200;
option subnet-mask 255.255.255.0;
option broadcast-address 192.168.1.255;
option routers 192.168.1.1;
option netbios-name-servers 192.168.1.1;
# Use Google public DNS
option domain-name-servers 8.8.8.8, 8.8.4.4;
option domain-name "mydomain.it";
# Define address range
subnet 192.168.2.0 netmask 255.255.255.0 {
   range 192.168.2.15 192.168.2.25;
}

O resultado é:

  • O servidor tem o endereço IP desejado e é capaz de acessar a Internet
  • As máquinas clientes recebem o endereço IP do DHCP, mas não são capazes para passar por internet e / ou servidor de ping ou modem

Resultado de anúncio ip abaixo do servidor:

1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN 
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
    inet 127.0.0.1/8 scope host lo
    inet6 ::1/128 scope host 
       valid_lft forever preferred_lft forever
2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP qlen 1000
    link/ether 00:14:4f:20:20:9c brd ff:ff:ff:ff:ff:ff
    inet 192.168.1.5/24 brd 192.168.1.255 scope global eth0
    inet6 fe80::214:4fff:fe20:209c/64 scope link 
       valid_lft forever preferred_lft forever
3: eth1: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP qlen 1000
    link/ether 00:14:4f:20:20:9d brd ff:ff:ff:ff:ff:ff
    inet 192.168.2.5/32 scope global eth1
    inet6 fe80::214:4fff:fe20:209d/64 scope link 
       valid_lft forever preferred_lft forever
4: eth2: <NO-CARRIER,BROADCAST,MULTICAST,UP> mtu 1500 qdisc pfifo_fast state DOWN qlen 1000
    link/ether 00:14:4f:20:20:a2 brd ff:ff:ff:ff:ff:ff
    inet 192.168.3.5/32 scope global eth2
5: eth3: <NO-CARRIER,BROADCAST,MULTICAST,UP> mtu 1500 qdisc pfifo_fast state DOWN qlen 1000
    link/ether 00:14:4f:20:20:a3 brd ff:ff:ff:ff:ff:ff
    inet 192.168.4.5/32 scope global eth3
6: virbr0: <NO-CARRIER,BROADCAST,MULTICAST,UP> mtu 1500 qdisc noqueue state DOWN 
    link/ether 06:0d:62:1a:3c:c5 brd ff:ff:ff:ff:ff:ff
    inet 192.168.122.1/24 brd 192.168.122.255 scope global virbr0

aqui abaixo ip r no servidor:

 default via 192.168.1.1 dev eth0  metric 100 
169.254.0.0/16 dev eth3  scope link  metric 1000 
192.168.1.0/24 dev eth0  proto kernel  scope link  src 192.168.1.2 
192.168.122.0/24 dev virbr0  proto kernel  scope link  src 192.168.122.1 

Abaixo, uma foto do mapa:

    
por user234441 11.01.2014 / 08:31

2 respostas

0

1) configure as redes

Além da parte DHCP (e do redirecionamento sugerido), você precisa configurar suas interfaces corretamente.

Na maioria dos casos, cada interface está em sua própria rede IP (estou dando exemplos de endereços, você terá que adaptá-los).

Deixe o eth0 como está.

auto eth1
  iface eth1 inet static
  address 192.168.2.5
  netmask 255.255.255.0
  network 192.168.2.0

auto eth2
  iface eth2 inet static
  address 192.168.3.5
  netmask 255.255.255.0
  network 192.168.3.0

auto eth3
  iface eth3 inet static
  address 192.168.4.5
  netmask 255.255.255.0
  network 192.168.4.0

Se o servidor DHCP estiver sendo executado na mesma máquina, você terá que configurá-lo adequadamente. Apenas para testes, você pode fornecer a um host em cada sub-rede um endereço IP estático (por exemplo, usar 192.168.2.11 para um host conectado a eth1 )

Depois de configurar corretamente as redes IP e os endereços IP, você precisará habilitar o encaminhamento de IP com

sudo sh -c "echo 1 > /proc/sys/net/ipv4/ip_forward"

(apenas por uma vez para testar o sucesso)

e editando /etc/sysctl.conf e "ativando" a linha

net.ipv4.ip_forward=1

removendo # no início.

Quando isso é feito (cada cliente deve ser capaz de fazer ping na interface correspondente do seu servidor)

2) ativar NAT

(tente primeiro para uma sub-rede, eu dou o exemplo para eth1 você tem que adaptar endereços para os outros)

sudo iptables -A FORWARD -o eth0 -i eth1 -s 192.168.2.0/24 -m conntrack --ctstate NEW -j ACCEPT
sudo iptables -A FORWARD -m conntrack --ctstate ESTABLISHED,RELATED -j ACCEPT
sudo iptables -t nat -F POSTROUTING
sudo iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE

Agora, os clientes da sub-rede 1 devem conseguir fazer ping de endereços IP na Internet, mas apenas até a próxima reinicialização do seu servidor. Se funcionar, continue com eth2 e eth3 de acordo.

Para torná-lo permanente, você precisa salvar a configuração atual (em funcionamento) das regras do netfilter

sudo iptables-save | sudo tee /etc/iptables-NAT.sav

e crie a seguinte entrada em /etc/rc.local para recarregar a mesma configuração em cada reinicialização. Certifique-se de que exit 0 é após sua nova entrada

iptables-restore < /etc/iptables-NAT.sav

(sem sudo necessário aqui)

3) DHCP

A configuração DHCP está errada. Você deve criar sub-redes diferentes para cada interface e você deve definir um "gateway" apropriado (usando option routers ) para cada sub-rede.

# for eth1 with 192.168.2.5 as local address
subnet 192.168.2.0 netmask 255.255.255.0 {
range 192.168.2.15 192.168.2.25;
option routers 192.168.2.5;
} 
# for eth2 with 192.168.3.5 as local address
subnet 192.168.3.0 netmask 255.255.255.0 {
range 192.168.3.15 192.168.3.25;
option routers 192.168.3.5;
} 
# for eth3 with 192.168.4.5 as local address
subnet 192.168.4.0 netmask 255.255.255.0 {
range 192.168.4.15 192.168.4.25;
option routers 192.168.4.5;
} 

Agora, todos os clientes devem conseguir acessar endereços IP fora de sua rede. A resolução de nomes provavelmente ainda não estará disponível.

    
por guntbert 12.01.2014 / 20:54
0

Você precisa ativar o encaminhamento de IP no servidor para que os pacotes dos hosts possam alcançar a WAN:

sudo sysctl net/ipv4/ip_forward=1

Tente isso e tente fazer ping de um IP ou URL externo dos hosts.

    
por animaletdesequia 11.01.2014 / 08:57