Como encaminhar todo o tráfego para um host através de um dos dois tipos de nic no linux

3

Configure da seguinte forma:

  • Um gateway / firewall
  • Um interruptor
  • Dois servidores por trás do firewall com 2 NICs cada.

Cada NIC está conectada ao switch. Os servidores estão executando o servidor Ubuntu.

Uma das duas NICs agora é usada para todo o tráfego.
O que eu quero é que todo o tráfego entre os dois servidores locais use as NICs não usadas no momento; como posso fazer isso?
Eu tentei adicionar uma rota estática com o comando route, mas com pouco sucesso ...

    
por Morten 03.03.2011 / 18:24

5 respostas

4

Você está no caminho certo: uma rota estática é definitivamente o que você deseja usar para garantir que o tráfego entre esses hosts viaje em uma interface específica. Aqui está um documento que pode ajudar: link

    
por 03.03.2011 / 18:35
2

Você pode fazer isso de forma bastante flexível com iproute2 e iptables:

# Make a second routing table
/usr/sbin/ip route flush table 2
# Set a new default route for this new table
/usr/sbin/ip route add default via a.b.c.d dev eth5 table 2

Então:

# Make some packets use this table instead of the default table
/usr/sbin/ip rule add from to $SUBNET table 2

Ou:

# Mark some packets in iptables mangle
/usr/sbin/iptables -t mangle -A PREROUTING -d $subnet -j MARK --set-mark 0x5
# make marked packets use this table
/usr/sbin/ip rule add fwmark 5 table 2

(os caminhos podem variar em seu sistema e você pode integrá-lo com o NetworkManager escrevendo um script em /etc/Networkmanager/dispatcher.d/ ou / etc / network / interfaces como uma regra de pré / postagem)

    
por 03.03.2011 / 19:00
1

Acho que abaixo captura sua configuração atual

|---------|-Nic1  \
| Server A|        \ 
|---------|-Nic2    \--|----------|
                       | Switch 1 |    |------------|
                       |          |----| Firewall 1 |
                       |          |    |------------| 
|---------|-Nic2    /--|----------|
| Server B|        /   
|---------|-Nic1  /

(servidor A)    Nic 1 IP: 10.20.X.2 / 24    Nic 2 (não ativo)    Padrão GW 10.20.X.1 (dentro do IP do Firewall)

(servidor B)    Nic 1 IP: 10.20.X.3 / 24    Nic 2 (não ativo)    Padrão GW 10.20.X.1 (dentro do IP do Firewall)

Tudo o que você precisa fazer é configurar o Nic2 em cada servidor para uma sub-rede diferente, por exemplo. 192.168.X.2 e 192.168.X.3. Ao fazer isso, toda a comunicação entre os dois nós estaria em sua própria sub-rede local, sem necessidade de uma rota estática.

Na verdade, essa configuração é muito preferível, pois separa o tráfego privado do público. Além disso, se você mudar pode lidar se você deve configurar duas Vlans para cada par de nics.

J

    
por 03.03.2011 / 22:23
1

Duas perguntas para os especialistas: a) Por que não ligar diretamente os nic2s, ignorando o switch? Reduzirá a carga no switch também (se possível)

b) Por que não apenas editar "/ etc / hosts" para apontar "server2" para o nic2-address.

Exemplo:

Server1
- nic1 = 10.1.2.3
- nic2 = 192.168.2.3

Server2
- nic1 = 10.1.2.4
- nic2 = 192.168.2.4

server1: / etc / hosts

192.168.2.4 server2

server2: / etc / hosts

192.168.2.3 server1

Isso significaria "administração local", sim, mas manteria a configuração do switch limpa e simples e manteria a carga no switch inativo.

    
por 21.12.2011 / 15:43
0

Desculpe, talvez eu tenha entendido mal, mas você não pode simplesmente usar um nome DNS interno para o seu servidor (usando / etc / hosts) que seria mapeado para o IP da segunda NIC?

    
por 03.03.2011 / 21:36