Outils pour utilisateurs

Outils du site


machines:grifon:bgp-adsl

Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

machines:grifon:bgp-adsl [2019/06/20 07:52] – créée - modification externe 127.0.0.1machines:grifon:bgp-adsl [2026/07/28 14:34] (Version actuelle) – supprimée - modification externe (Date inconnue) 127.0.0.1
Ligne 1: Ligne 1:
-====== bgp-adsl A METTRE A JOUR ====== 
  
-FreeBSD bgp-adsl.grifon.fr 11.2-RELEASE amd64 GENERIC 
- 
- 
-Machine virtuelle \\ 
-Routeur de collecte ADSL 
- 
-===== Administrateurs ===== 
- 
-  * alarig 
-  * dotux 
-  * gizmo 
-  * nemo 
- 
-===== Services ===== 
- 
-  * RADIUS, freeradius 
-  * BGP, bird 
- 
-==== RADIUS ==== 
- 
-Ce service sert à authentifier les clients PPP (est-ce que le couple user/passwd est le bon ?) et à donner les IPs que ce client est autorisé à utiliser. 
- 
-On commence par installer les paquets qui vont bien : 
- 
-<code>emerge -va net-dialup/freeradius net-dialup/freeradius-client</code> 
- 
-Ensuite, on détermine les machines qui pourront se connecter : 
- 
-<file | /etc/raddb/clients.conf> 
-client localhost { 
- ipaddr = 127.0.0.1 
- proto = * 
- secret = passwd 
- require_message_authenticator = no 
- nas_type = other # localhost isn't usually a NAS... 
- limit { 
- max_connections = 16 
- lifetime = 0 
- idle_timeout = 30 
- } 
-} 
-client localhost_ipv6 { 
- ipv6addr = ::1 
- secret = passwd 
-} 
-client phibee_auth-srv2 { 
- ipv4addr = 78.41.160.24 
- secret = passwd 
-} 
-client phibee_auth-srv1 { 
- ipv4addr = 78.41.185.40 
- secret = passwd 
-} 
-</file> 
- 
-Les clients se renseignent ainsi : 
- 
-<file | /etc/raddb/users> 
-gfa@grifon.ptel.ipadsl Cleartext-Password := "passwd" 
- Service-Type = Framed-User, 
- Framed-Protocol = PPP, 
- Framed-Routing = None, 
- Framed-IP-Address = 89.234.186.22, 
- Framed-IP-Netmask = 255.255.255.255, 
- Framed-MTU = 1492, 
- Tunnel-Medium-Type = IP, 
- Tunnel-Server-Endpoint = 89.234.186.11, 
- Tunnel-Type = L2TP, 
- Framed-IPv6-Prefix = 2a00:5884:1100:2::/64, 
- Framed-IPv6-Address = 2a00:5884:1100:2::2, 
- Framed-Interface-Id = 0:0:0:2, 
- Delegated-IPv6-Prefix = 2a00:5884:1102::/48 
-</file> 
- 
-Framed-IP-Address correspond à l’IPv4 du client, Framed-IPv6-Prefix le range d’interco et Delegated-IPv6-Prefix le préfixe que nous lui déléguons. 
- 
-Le realm change en fonction de la collecte, voici ceux que nous devons utiliser : 
-  * grifon.ptel pour Orange 
-  * grifon.ptel.ipadsl pour SFR 
-  * grifon.phibee.adsl pour Axione 
-  * grifon.xdsl-kosc.ptel pour KOSC 
- 
- 
-==== BGP ==== 
- 
-On utilise BGP pour annoncer nos IPs RADIUS et L2TP afin qu’elles soient routées sur l’interco plutôt que par le net. Ça permet de ne payer le transit qu’une fois. \\ 
-Phibee nous annonce également leurs IPs associées à chaque service, afin que les réponses passent également par le bon tunnel. 
- 
-On en profite pour annoncer les IPv4 à nos routeurs de bordures. Comme nous n’avons pas encore de bloc dédié (le plan d’adressage est complet sur le premier /24, on est en attente de nouvelles de gitoyen pour en avoir un deuxième), on ne peut pas router tout un bloc à la main. 
- 
-Phibee nous livre sur une interco /31 publique pour chaque service, chacune dans son VLAN. 
- 
-<file | /etc/bird.conf> 
-# Configure logging 
-log syslog { warning, error, fatal, bug }; 
- 
-# Turn on global debugging of all protocols 
-# debug protocols all; 
- 
-# Override router ID and store ASN 
-router id 89.234.186.206; 
- 
-##################### 
-# GENERAL PROTOCOLS # 
-##################### 
-# This pseudo-protocol watches all interface up/down events. 
-protocol device { 
-        # Scan interfaces every 5 seconds 
-        scan time 5; 
-} 
- 
-protocol direct {} 
- 
-protocol kernel { 
-        persist; 
-        import none; 
-        export all; 
-} 
- 
-protocol bgp bgp_phibee_radius { 
-        local as 204092; 
-        neighbor 78.41.191.124 as 8487; 
-        export where proto = "direct1"; 
-        export filter { if net ~ [ 89.234.186.10/32 ] then accept; }; 
-} 
- 
-protocol bgp bgp_phibee_lns { 
-        local as 204092; 
-        neighbor 78.41.191.126 as 8487; 
-        export where proto = "direct1"; 
-        export filter { if net ~ [ 89.234.186.11/32 ] then accept; }; 
-} 
- 
-protocol bgp ibgp_nominoe { 
-        local as 204092; 
-        neighbor 89.234.186.203 as 204092; 
-        export where proto = "direct1"; 
- 
-        next hop self; 
-} 
- 
-protocol bgp ibgp_budic { 
-        local as 204092; 
-        neighbor 89.234.186.202 as 204092; 
-        export where proto = "direct1"; 
- 
-        next hop self; 
-} 
-</file> 
-===== Conf réseau ===== 
- 
-La VM ne comporte qu’un port réseau public (''eth0'') et un port réseau privé (''eth1''). 
- 
-Le trafic rentre par l’interco avec phibee sur ''eth0.2001'' (L2TP) et ressort par ''eth0'' (Ethernet, VLAN natif 32). 
- 
-Les échanges RADIUS se font sur ''eth0.2000''. 
- 
-L’interface ''dummy0'' sert de loopback pour porter les IPs sur lesquelles se bind le RADIUS et le L2TP, que l’on annonce en BGP à phibee. 
- 
-La passerelle de la machine est ''89.234.186.201'' et ''2a00:5884:0:1::1'', ce qui correspond à un VRRP entre nominoe et budic. 
- 
-<file> 
-1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000 
-    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00 
-    inet 127.0.0.1/8 brd 127.255.255.255 scope host lo 
-       valid_lft forever preferred_lft forever 
-    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 group default qlen 1000 
-    link/ether 7a:0d:49:b8:6a:85 brd ff:ff:ff:ff:ff:ff 
-    inet 89.234.186.206/29 brd 89.234.186.207 scope global eth0 
-       valid_lft forever preferred_lft forever 
-    inet6 2a00:5884:0:1:ffff:ffff:ffff:ffff/64 scope global 
-       valid_lft forever preferred_lft forever 
-    inet6 fe80::780d:49ff:feb8:6a85/64 scope link 
-       valid_lft forever preferred_lft forever 
-3: eth1: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP group default qlen 1000 
-    link/ether be:a8:8a:55:c1:0e brd ff:ff:ff:ff:ff:ff 
-    inet 172.17.0.22/24 brd 172.17.0.255 scope global eth1 
-       valid_lft forever preferred_lft forever 
-    inet6 fe80::bca8:8aff:fe55:c10e/64 scope link 
-       valid_lft forever preferred_lft forever 
-4: dummy0: <BROADCAST,NOARP,UP,LOWER_UP> mtu 1500 qdisc noqueue state UNKNOWN group default qlen 1000 
-    link/ether 02:8e:6a:62:b4:40 brd ff:ff:ff:ff:ff:ff 
-    inet 89.234.186.10/32 scope global dummy0 
-       valid_lft forever preferred_lft forever 
-    inet 89.234.186.11/32 scope global dummy0 
-       valid_lft forever preferred_lft forever 
-    inet6 fe80::8e:6aff:fe62:b440/64 scope link 
-       valid_lft forever preferred_lft forever 
-5: eth0.2000@eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue state UP group default qlen 1000 
-    link/ether 7a:0d:49:b8:6a:85 brd ff:ff:ff:ff:ff:ff 
-    inet 78.41.191.125/31 scope global eth0.2000 
-       valid_lft forever preferred_lft forever 
-    inet6 fe80::780d:49ff:feb8:6a85/64 scope link 
-       valid_lft forever preferred_lft forever 
-6: eth0.2001@eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue state UP group default qlen 1000 
-    link/ether 7a:0d:49:b8:6a:85 brd ff:ff:ff:ff:ff:ff 
-    inet 78.41.191.127/31 scope global eth0.2001 
-       valid_lft forever preferred_lft forever 
-    inet6 fe80::780d:49ff:feb8:6a85/64 scope link 
-       valid_lft forever preferred_lft forever 
-13: ppp0: <POINTOPOINT,MULTICAST,NOARP,UP,LOWER_UP> mtu 1492 qdisc pfifo_fast state UNKNOWN group default qlen 3 
-    link/ppp 
-    inet 89.234.186.11 peer 89.234.186.21/32 scope global ppp0 
-       valid_lft forever preferred_lft forever 
-    inet6 2a00:5884:1100:1::1/64 scope global 
-       valid_lft forever preferred_lft forever 
-    inet6 fe80::9e0:1d8b:94af:8d16/10 scope link 
-       valid_lft forever preferred_lft forever 
-</file>