barra de menu

viernes, 4 de marzo de 2016

LABORATORIO BALANCEO - JNCIS

TOPOLOGÍA - BALANCEO DE CARGA


  1. Configurar Balanceo de Carga en JNCIS-6 para las redes 192.168.2.0 y 192.168.3.0
  2. Incluir en el balanceo el tráfico de capa 4
  3. Identificar que enlace y que método de balanceo elige JNCIS-6 para llegar a la 192.168.4.0



---------------------------------------------------------------------------------------------------------------


CONFIGURACIÓN BÁSICA


JNCIS-6

interfaces {
    em0 {
        unit 0 {
            family inet {
                address 10.0.0.1/30;
            }
        }
    }
    em1 {
        unit 0 {
            family inet {
                address 10.0.0.5/30;
            }
        }
    }
    em3 {
        vlan-tagging;
        unit 172 {
            vlan-id 172;
            family inet {
                address 172.16.0.1/24;
            }
        }
    }
}
protocols {
    ospf {
        area 0.0.0.0 {
            interface em0.0;
            interface em1.0;
            interface em3.172;
        }
    }
}

JNCIS-7

interfaces {
    em0 {
        unit 0 {
            family inet {
                address 10.0.0.2/30;
            }
        }
    }
    em1 {
        unit 0 {
            family inet {
                address 10.0.0.6/30;
            }
        }
    }
    em3 {
        vlan-tagging;
        unit 2 {
            vlan-id 2;
            family inet {
                address 192.168.2.1/24;
            }
        }
        unit 3 {
            vlan-id 3;
            family inet {
                address 192.168.3.1/24;
            }
        }
        unit 4 {
            vlan-id 4;
            family inet {
                address 192.168.4.1/24;
            }
        }
    }
}
protocols {
    ospf {
        area 0.0.0.0 {
            interface em0.0;
            interface em1.0;
            interface em3.2;
            interface em3.3;
            interface em3.4;
        }
    }
}


1. Configuramos el balanceo

Lo primero que hacemos es ver por dónde se conocen las rutas y por donde las va a sacar el equipo JNCIS-6 hacia las 192.168.X.0


Para llegar a las 2 redes se va por la misma interface (em0)
La tabla de envió refleja también el next-hop.
 Definimos la política:

set policy-options policy-statement BALANCEO from route-filter 192.168.2.0/24 exact
set policy-options policy-statement BALANCEO from route-filter 192.168.3.0/24 exact
set policy-options policy-statement BALANCEO then load-balance per-packet

Aplicamos la política:

set routing-options forwarding-table export BALANCEO


 Ahora vamos otra vez a la tabla de envió y vemos que tiene el tipo "ULST" y que tiene dos next-hop para llegar al destino.




Hacemos un trace desde el PC-1 hacia PC-2 y PC-3 y vemos que usa un next hop diferente para llegar a los destinos.

No hagáis caso al "unreachable". Si hacéis un ping se llega perfectamente

2. Incluimos el trafico de capa 4

Simplemente en JNCIS-6 escribimos:

 set forwarding-options hash-key family inet layer-3
 set forwarding-options hash-key family inet layer-4


3. Identificamos la otra red (192.168.4.0)

 Como podemos apreciar en la tabla de envió, el equipo JNCIS-6 elegirá uno de los dos enlaces para llegar a destino. Al no estar configurado para el balanceo, actuará como con una dirección normal. Podríamos incluir esta red o, si quisiéramos que el equipo hiciera un balanceo por defecto cuando hay más de un camino para llegar a destino, eliminaríamos el "from" de la configuración y así se aplicaría a todo los caminos y no solo a unas rutas específicas, es decir, solo configuraríamos:

set policy-options policy-statement BALANCEO then load-balance per-packet




TOPOLOGÍA - FILTER-BASED FORWARDING




  1. Configurar FBF en JNCIS-8 para balancear el tráfico a Internet basándose en el origen del tráfico. 
      • La red 172.25.2.0/24 se cursará por el ISP-A
      • La red 172.25.3.0/24 se cursará por el ISP-B
  2. La red 172.25.5.0 puede salir por cualquiera de los dos
  3. La tabla de rutas inet.0 de ISP-A en JNCIS-8 tiene que tener todas las rutas de inet.0

---------------------------------------------------------------------------------------------------

CONFIGURACIÓN BÁSICA


JNCIS-8

interfaces {
    em0 {
        vlan-tagging;
        unit 0 {
            vlan-id 100;
            family inet {
                address 172.25.100.1/30;
            }
        }
    }
    em1 {
        vlan-tagging;
        unit 1 {
            vlan-id 20;
            family inet {
                address 172.20.0.1/30;
            }
        }
    }
    em2 {
        vlan-tagging;
        unit 1 {
            vlan-id 21;
            family inet {
                address 172.20.1.1/30;
            }
        }
    }
}

protocols {
    ospf {
        area 0.0.0.0 {
            interface em0.0;
        }
    }
}


JNCIS-9

interfaces {
    em0 {
        vlan-tagging;
        unit 2 {
            vlan-id 2;
            family inet {
                address 172.25.2.1/24;
            }
        }
        unit 3 {
            vlan-id 3;
            family inet {
                address 172.25.3.1/24;
            }
        }
        unit 5 {
            vlan-id 5;
            family inet {
                address 172.25.5.1/24;
            }
        }
    }
    em1 {
        vlan-tagging;
        unit 0 {
            vlan-id 100;
            family inet {
                address 172.25.100.2/30;
            }
        }
    }
}
routing-options {
    static {
        route 0.0.0.0/0 next-hop 172.25.100.1;
    }
}
protocols {
    ospf {
        area 0.0.0.0 {
            interface em0.2;
            interface em0.3;
            interface em0.5;
            interface em1.0;
        }
    }
}




ISP-A

interfaces {
    em0 {
        unit 1 {
            family inet {
                address 172.20.0.2/30;
            }
        }
    }
    em1 {
        vlan-tagging;
        unit 1 {
            vlan-id 5;
            family inet {
                address 172.19.25.1/24;
            }
        }
    }
}
routing-options {
    static {
        route 0.0.0.0/0 next-hop 172.20.0.1;
    }
}


ISP-B

interfaces {
    em0 {
        unit 0 {
            family inet {
                address 172.20.1.2/30;
            }
        }
    }
    em1 {
        vlan-tagging;
        unit 1 {
            vlan-id 5;
            family inet {
                address 172.19.25.2/24;
            }
        }
    }
}
routing-options {
    static {
        route 0.0.0.0/0 next-hop 172.20.1.1;
    }
}


Nota: PC-4 tiene como "default gateway" a ISP-A y PC-6 a ISP-B

Deberíamos ver desde JNCIS-8  las rutas de JNCIS-9.

Todavía no podemos hacer ping de extremo a extremo. JNCIS-8
no sabe llegar a la red 172.19.25.0


Lo primero que debemos hacer es configurar el "firewall filter":


root@JNCIS-8# show | compare
[edit]
  firewall {
      family inet {
          filter FBF {
              term RED-2 {
                  from {
                      source-address {
                          172.25.2.0/24;
                      }
                  }
                  then {
                      routing-instance ISP-A;
                  }
              }
              term RED-3 {
                  from {
                      source-address {
                          172.25.3.0/24;
                      }
                  }
                  then {
                      routing-instance ISP-B;
                  }
              }
          }
      }
  }
Si hacéis un "commit" ahora, en la configuración os dará error de las routing instances 
porque todavía no están creadas

Lo siguiente es aplicar el filtro en la interfaces de entrada:



root@JNCIS-8# set interfaces em0.0 family inet filter input FBF


Ahora es el turno de las routing instances:

JNCIS-8 

routing-instances {
      ISP-A {
          instance-type forwarding;
          routing-options {
              static {
                  route 0.0.0.0/0 next-hop 172.20.0.2;
              }
          }
      }
      ISP-B {
          instance-type forwarding;
          routing-options {
              static {
                  route 0.0.0.0/0 next-hop 172.20.1.2;
              }
          }
      }
  }

Tened en cuenta el tipo de routing instances. Luego creamos una ruta por defecto que apunta a next hop diferente para cada routing instance. ¡Ojo, no hemos añadido ninguna interface! Si hacéis un "show route table ?", veréis que no se han creado las tablas de las routing instances ISP-A y B





Creamos el Rib Group:


JNCIS-8 

  routing-options {
      rib-groups {
          INTERNET {
              import-rib [ inet.0 ISP-A.inet.0 ISP-B.inet.0 ];
          }
      }
  }


Simplemente decimos que se compartan las rutas de esas tablas. Metemos la inet.0 porque es la master.

Pero tenemos que configurar algo más. Tenemos que decirle al equipo que se compartan las propia redes de las interfaces que queremos balancear:


  set routing-options interface-routes rib-group inet INTERNET


Ahora deberíamos ver las tablas ISP-A e ISP-B creadas


Ahora verificamos:





La ruta por defecto se queda instalada en las routing instances


No tenemos vecino OSPF, por lo tanto, ahora no nos llegan las rutas de JNCIS-9. La causa. el "firewall filter". Tenemos que añadir un "term" para que acepte el resto de rutas ´(172.25.5.0/24) y además se pueda formar la vecindad OSPF:


JNCIS-8 

firewall {
    family inet {
        filter FBF {
            term else-accept {
                               then {
                                        accept;
                                               }
                                   }
                      }
         }
}

Ahora vemos en la routing instance inet.0 las redes de JNCIS-9


Ahora se llega de extremo a extremo


Y ahora la prueba final. Desde PC-2 hacemos un trace hacia la 172.25.19.4 y el tráfico debe dirigirlo el equipo JNCIS-8 hacia ISP-A.

La 172.20.0.2 es la em0.1 del ISP-A


Desde PC-3 hacemos un trace hacia la 172.25.19.6 y el tráfico debe dirigirlo el equipo JNCIS-8 hacia ISP-B.

La 172.20.1.2 es la em0.1 del ISP-B

Ahora probamos de PC-5.

No llegamos a destino. Se queda en la 172.25.100.1 (JNCIS-8)

El problema que se  presenta aquí, es que hemos configurado en JNCIS-8 rutas por defecto para cada routing isntance pero no hemos configurado para el tráfico que no pase por una de ellas, como la red 172.25.5.0/24. Configuramos una 2 rutas por defecto, cada una apuntando a un ISP y, establacemos una prioridad, dejando a ISP-B como ruta secundaria:


set routing-options route static route 0.0.0.0/0 next-hop 172.20.0.2
set routing-options route static route 0.0.0.0/0 qualified-next-hop 172.20.1.2 preference 7


Ahora llegamos siempre a través del ISP-A a menos que tiremos la interface

Desactivamos la interface que apunta a ISP-A:


root@JNCIS-8# deactivate interfaces em1.1

Y hacemos ping y trace desde PC-2, PC-3 y PC-5 hacia la 172.19.25.6. Y vemos que pasa por ISP-B.
Sin embargo no se puede hacer ping a la 172.19.25.4. Existe una solución fácil.Ahí os lo dejo por si queréis buscarlo vosotros mismos.


3. Traspasar las rutas de inet.0 a ISP-A.inet.0

ISP-A.inet.0 no tiene las redes LAN de JNCIS-9 

Normalmente se usa un Rib Group para compartir las redes, pero en los Junos antiguos se hacía así.

Configuramos una política:


set policy-options policy-statement IMPORTAR-A-ISPA from  instance master
set policy-options policy-statement IMPORTAR-A-ISPA then accept


Y ahora lo aplicamos en la routing instance de ISP-A:


set routing-instances ISP-A routing-options instance-import IMPORTAR-A-ISPA


Y ahora vemos como la tabla de ISP-A tiene esas rutas:






No hay comentarios:

Publicar un comentario