Roteamento simples baseado em política para correspondência do pacote de origem para retornar o pacote

2

Eu tenho dois roteadores de modem ADSL e um servidor todos no mesmo intervalo de endereços IP atribuídos estaticamente (192.168.0.1/24).

Internet 1 -- (1.1.1.1) Modem 1 (192.168.0.1) -- Switch -- (192.168.0.3) Server 
Internet 2 -- (2.2.2.2) Modem 2 (192.168.0.2) -----/

Cada um dos modems encaminha as portas para o servidor, por exemplo, ssh. Isso funciona em um modem, mas não no outro. Se eu fizer um rastreamento de pacote, os pacotes ssh chegam ao servidor e são retornados pelo gateway padrão, que pode ter um IP externo diferente da origem. Se não corresponder à origem, a resposta será descartada e a conexão ssh expirará.

por exemplo. Se o gateway padrão no servidor for 192.168.0.1, os pacotes ssh tomarão os seguintes caminhos:

Request:  SSH to 1.1.1.1 -> 192.168.0.1 -> 192.168.0.3
Response: 192.168.0.3 -> 192.168.0.1 -> 1.1.1.1
Result: WORKS! :-D

Request:  SSH to 2.2.2.2 -> 192.168.0.2 -> 192.168.0.3
Response: 192.168.0.3 -> 192.168.0.1 -> 1.1.1.1
Result: WRONG RESPONSE IP (2.2.2.2 != 1.1.1.1)

Eu entendo por meio de conversas com pessoas na rede do IRC ## que o que eu quero é "Roteamento Baseado na Origem", um tipo de Roteamento Baseado em Políticas.

Pelo que eu posso dizer, um PBR é parecido com:

access-list 1 permit 192.168.0.1
access-list 2 permit 192.168.0.2
!
interface async 1
 ip policy route-map equal-access
!
route-map equal-access permit 10
 match ip address 1
 set ip default next-hop 192.168.0.1
route-map equal-access permit 20
 match ip address 2
 set ip default next-hop 192.168.0.2
route-map equal-access permit 30
 set default interface null0

Eu passei muitas horas olhando para tutoriais e exemplos sobre isso, mas eles não parecem se aproximar das minhas necessidades. Especificamente, não consigo entender:

  1. Como o IP de origem é correspondido ao IP de resposta,
  2. O significado de 'async' no exemplo acima,
  3. Se o exemplo acima for até mesmo remotamente correto para minhas necessidades, e
  4. Onde devo colocar essa configuração em um servidor Ubuntu padrão?
por tudor 14.05.2013 / 06:28

2 respostas

2

Você precisa adicionar um IP adicional ao servidor (por exemplo, 192.168.0.4 ) e DNAT o tráfego chegar ao ADSL Modem 2 para o novo endereço. Desta forma, o servidor será capaz de diferenciar entre as duas conexões a montante; no momento não pode fazer isso porque todo o tráfego que ele vê é destinado a 192.168.0.3 de qualquer endereço de origem na Internet sem indicação de qual modem ADSL o pacote percorreu.

Com a configuração IP adicional, no seu Roteamento Baseado em Políticas, sua conexão marca qualquer tráfego para 192.168.0.3 com uma marca que usa uma tabela de roteamento que rotea padrão para o Modem ADSL 1 e tráfego de marca de conexão para 192.168.0.4 com um marcar para usar uma tabela de roteamento com o ADSL Modem 2 como o gateway padrão.

    
por 14.05.2013 / 06:38
1

Eu configurei isso no passado usando o roteamento de políticas do Manual avançado de roteamento e controle de tráfego do Linux .

No seu caso, você parece ter uma configuração ligeiramente diferente com um switch no meio. Você pode adaptar sua configuração à sugestão, talvez adicionando um segundo nic. Caso contrário, você pode precisar configurar várias VLANs para realizar o que deseja depois com um único nic.

    
por 14.05.2013 / 06:39