Outils pour utilisateurs

Outils du site


freeboxhd

Comment agréger le flux video de la Freebox sur un reseau IP

Position de la problématique:

Je dispose d'une Freeboxv5 en mode bridge (non routeur), d'une freeboxHD (boitier TV). Bien que Free propose une paire de boitiers CPL, cela ne passe pas chez moi sans doute un problème de phases ….

Bien sur je n'ai qu'un seul câble réseau entre les deux points : freeboxv5 et routeur linux d'un coté, freeboxHD et station linux de l'autre. L'idée c'est donc d'agréger deux flux ethernet dans des vlans différents pour faire cohabiter les deux sur un seul et même cable ethernet (gigabit qui plus est). Un dessin valant mille mots, voici un petit croquis:

http://islay.terre-adelie.org/image/Diagramme1.png

Une histoire de VLAN

Branché en ethernet sur un ordinateur, la freeboxHD tente de communiquer sur le VLAN100, on aperçoit en particulier des requêtes DHCP en IPv4 et de l'IPv6….

Bridge ethernet

Les freebox utilisant pas mal de protocols distincts (IPv4, IPv6, IPsec, …) il faut toucher le moins possible aux paquets, d'où le choix du bridge ethernet.

Config au niveau du routeur:

Le routeur dispose de beaucoup d'interfaces réseaux, parmis lesquelles on peut citer

  • eth0 : vers la freeboxv5, c'est la patte IP externe, c'est là que le plus gros du travail du firewall se fait sur le routeur .
  • eth6 : vers la freeboxv5, prise ethernet jaune pour la video.
  • eth7 : vers le switch qui est relié à la station linux et la freebox HD.

/etc/network/interfaces: il semblerait que les adresses IPv4 des freebox soient dans la classe 192.168.27.0/24

# Pont inter-freebox
auto eth6.100                #Connected on the Freebovx5-video port
iface eth6.100 inet static
       vlan_raw_device eth6

auto eth7.100                #Connected on the FreeboxHD through a switch
iface eth7.100 inet static
       vlan_raw_device eth7

auto br1
iface br1 inet static
    bridge_ports eth6.100 eth7.100
    bridge_stp off
    bridge_maxwait 0
    address 192.168.27.100
    netmask 255.255.255.0
    mtu 1500

Niveau firewall je me suis contenté de quelque chose du type:

iptables -A FORWARD -i br1 -o br1  -j ACCEPT

De toute facon si bridge-nf-call-iptables = 0 les regles du firewall ne devraient pas être appliquées pour les paquets transmis.

Dans /proc/sys/net/bridge/:

  • bridge-nf-call-arptables 0
  • bridge-nf-call-ip6tables 0
  • bridge-nf-call-iptables 0
  • bridge-nf-filter-pppoe-tagged 0
  • bridge-nf-filter-vlan-tagged 0

dans /proc/sys/net, une conf qui marche mais sans doute à simplifier. Si vous avez un avis sur le sujet … merci de me le faire savoir Pour eth6.100

./neigh/eth6.100/mcast_solicit = 3
./neigh/eth6.100/ucast_solicit = 3
./neigh/eth6.100/app_solicit = 0
./neigh/eth6.100/retrans_time = 100
./neigh/eth6.100/base_reachable_time = 30
./neigh/eth6.100/delay_first_probe_time = 5
./neigh/eth6.100/gc_stale_time = 60
./neigh/eth6.100/unres_qlen = 3
./neigh/eth6.100/proxy_qlen = 64
./neigh/eth6.100/anycast_delay = 100
./neigh/eth6.100/proxy_delay = 80
./neigh/eth6.100/locktime = 100
./neigh/eth6.100/retrans_time_ms = 1000
./neigh/eth6.100/base_reachable_time_ms = 30000
./conf/eth6.100/forwarding = 1
./conf/eth6.100/mc_forwarding = 0
./conf/eth6.100/accept_redirects = 0
./conf/eth6.100/secure_redirects = 1
./conf/eth6.100/shared_media = 1
./conf/eth6.100/rp_filter = 1
./conf/eth6.100/send_redirects = 0
./conf/eth6.100/accept_source_route = 0
./conf/eth6.100/proxy_arp = 0
./conf/eth6.100/medium_id = 0
./conf/eth6.100/bootp_relay = 1
./conf/eth6.100/log_martians = 1
./conf/eth6.100/tag = 0
./conf/eth6.100/arp_filter = 0
./conf/eth6.100/arp_announce = 0
./conf/eth6.100/arp_ignore = 0
./conf/eth6.100/arp_accept = 0
./conf/eth6.100/arp_notify = 0
./conf/eth6.100/disable_xfrm = 0
./conf/eth6.100/disable_policy = 0
./conf/eth6.100/force_igmp_version = 0
./conf/eth6.100/promote_secondaries = 0

Pour br1

./neigh/br1/mcast_solicit = 3
./neigh/br1/ucast_solicit = 3
./neigh/br1/app_solicit = 0
./neigh/br1/retrans_time = 100
./neigh/br1/base_reachable_time = 30
./neigh/br1/delay_first_probe_time = 5
./neigh/br1/gc_stale_time = 60
./neigh/br1/unres_qlen = 3
./neigh/br1/proxy_qlen = 64
./neigh/br1/anycast_delay = 100
./neigh/br1/proxy_delay = 80
./neigh/br1/locktime = 100
./neigh/br1/retrans_time_ms = 1000
./neigh/br1/base_reachable_time_ms = 30000
./conf/br1/forwarding = 1
./conf/br1/mc_forwarding = 0
./conf/br1/accept_redirects = 0
./conf/br1/secure_redirects = 1
./conf/br1/shared_media = 1
./conf/br1/rp_filter = 1
./conf/br1/send_redirects = 0
./conf/br1/accept_source_route = 0
./conf/br1/proxy_arp = 0
./conf/br1/medium_id = 0
./conf/br1/bootp_relay = 1
./conf/br1/log_martians = 1
./conf/br1/tag = 0
./conf/br1/arp_filter = 0
./conf/br1/arp_announce = 0
./conf/br1/arp_ignore = 0
./conf/br1/arp_accept = 0
./conf/br1/arp_notify = 0
./conf/br1/disable_xfrm = 0
./conf/br1/disable_policy = 0
./conf/br1/force_igmp_version = 0
./conf/br1/promote_secondaries = 0

Biblio

freeboxhd.txt · Dernière modification: 2023/05/10 21:08 par jerome