VLAN mit Fritz!BOX Fon WLAN 7050

basti79

Neuer User
Mitglied seit
9 Apr 2007
Beiträge
18
Punkte für Reaktionen
0
Punkte
0
Hallo zusammen...

Ich habe eine Fritz!BOX Fon WLAN 7050 und betreibe diese im Bridge-Mode, also eth0, eth1 und wlan sind mit einer Bridge verbunden.

Jetzt habe ich mittels den Sourcen von AVM das 8021q Kernel-Modul (das ist das für VLANs) kompiliert und vconfig in die buysbox eingebaut. Soweit hat das alles geklappt, Kernel-Modul lädt, vconfig kann VLAN-Interfaces machen usw. Als Test habe ich auf dem lan Interface das VLAN 10 angelegt und die IP 192.168.111.111/24 vergeben, das Subnetz war bis jetzt noch frei. Jetzt erwarte ich, dass bei einem Ping von z.B. 192.168.111.123 ARP-Requests im VLAN 10 ge-broadcastet werden, aber ich kann mittels Wireshark auf einem PC, der direkt an die Box angeschlossen ist, kein einziges Paket erblicken :(

Als Test, dass ich keinen Grundlegenden Denkfehler mache, habe ich einem anderen Linux-Rechner die gleiche VLAN-Config verpasst und den gleichen Test dort wiederholt => funktioniert einwandfrei!

Hat jemand von euch einen Tipp?
bzw. hat schonmal wer die 7050 mit VLANs ans laufen bekommen?

Danke schonmal
Sebastian.
 
Also ich habe heute selbst noch einiges herausgefunden. Der Treiber avm_cpmac für die Ethernet-Interfaces des Box scheint die VLAN-Tagged Packete zu verwerfen, wenn er nicht auch über die VLAN-Konfiguration bescheid weiß.
Ich habe mal mit cpmaccfg versucht, was ja eigentlich für den Switch in der 7170 gedacht ist. Das hat wie zu erwarten war nicht geklappt.

Weiß vielleicht einer wie sich die internen Interfaces der 7050 konfigurieren lassen?

Greets
Sebastian.
 
Wie hast Du denn cpmaccfg aufgerufen? Hast Du mal versucht, den Port in den WAN-Modus zu schalten? Da müssten dann die VLAN-Tags eigentlich rausgereicht werden...
 
Das Problem ist das die ioctl's gar nicht funktionieren, von daher spielen die Optionen wohl auch keine rolle *g*

Code:
# ./cpmaccfg info
Internal ports: 2
External ports: 1
# ./cpmaccfg gsm
ioctl: Invalid argument
# ./cpmaccfg ssm normal
Setting switch_mode to 'normal' (1).
ioctl: Invalid argument

Eine wichtige Information wäre noch, dass ich die aktuelle Firemware (Version 14.04.31) drauf habe. Also Kernel 2.6.13.1-ar7.
 
Zuletzt bearbeitet:
Hm, die 7050 hat wohl gar keinen Switch sondern 2 richtige NICs verbaut. Wenn ich mir Dein 1. Posting nochmal durchlese, heißt das ja, dass es mit einem Linux-"Client" funktioniert, mit einem Windows-PC (? Vermutung?) aber nicht. Kann es sein, dass Du Windows erst noch entsprechend konfigurieren musst, damit der die Ethernet-Frames mit VLAN auch annimmt?
 
Ja, ich vermute auch dass die zwei echte NICs hat.

Also, wenn ich die VLAN-Konfig auf die FritzBox bringe, dann geht es nicht. Wie ich noch festgestellt habe zählt der Treiber auch bei jedem versuch ein Packet mit VLAN-Tag zu senden oder empfangen den error-counter (unter ifconfig) hoch und verwirft das Paket.

"Mit Linux geht das" war etwas anders gemeint: Ich habe Testweise die gleiche VLAN-Config wie ich sie auf der FritzBox drauf hatte, auf einem anderen Linux-Rechner nachgebaut. Sozusagen als Test obs überhaupt so geht wie ich mir das vorgestellt habe.

Mittlerweile habe ich auch mal einen Blick in die Sourcen geworfen. Unter Fritz/GPL/kernel_8mb_26_build/kernel/linux-2.6.13.1/drivers/net/avm_cpmac/cpmac_if.c Zeile 152 ff. wird cpmap_priv->enable_vlan abgefragt und wenn das nicht gesetzt ist, die getaggten Pakete verworfen. Allerdings konnte ich keinen ioctl o.ä. finden um enable_vlan einzuschalten.

Sebastian.
 
Die 7050 hat definitiv zwei separate LAN-Devices. Daher verstehe ich auch nicht, was du mit einem VLAN erreichen willst?
 
Das Ziel ist ganz einfach: LAN A wird an einen VLAN-fähigen Switch angeschlssen und geht von daaus an einen Server (tagged). An LAN B soll noch ein Rechner dran (untagged). Mit zwei VLANs an LAN A kann ich dann den WLAN-Traffic von dem anderen Traffic (dem des Rechners an LAN B und VoIP) trennen.

Greets
Sebastian.
 
Moin,

wo soll das Problem dabei sein?
Die 7050 hat auf LAN A die IP 178.1 und auf LAN B die 181.1.
Hat doch Marsupilami schon geschrieben! :rolleyes:
 
Klar, ich weiß dass ich zwischen den Interfaces auch Routen kann, aber dann habe immer noch keine Möglichkeit den WLAN Traffic von anderem Traffic zu trennen. Die WLAN Clients haben außschließlich über IPSEC Zugriff, und das wird auch auf dem Server abgewickelt.

Sebastian.
 

Anhänge

  • bild.png
    bild.png
    3.4 KB · Aufrufe: 33
Hmm... das wird imho mit der 7050 nicht funktionieren, da benötigst du einen managed Switch.

Hier wurde mal VLAN-VDSL mit der 7170 diskutiert, vielleicht hilft es dir weiter: klick
 
doc456 schrieb:
...benötigst du einen managed Switch.
Nein, wieso?! Er will ja "nur" auf Port 1 Ethernet-Frames mit VLAN-Tag rausreichen, wenn der Server damit umgehen kann, ist das kein Thema.

Ich denke schon, dass der AVM NIC-Treiber hier das Problem ist. Würde bedeuten: entweder Kernel durch einen eigenen gepatchten erstetzen -was allerdings ein Problem sein dürfte, weil auch mit dsmod Replace Kernel zur Zeit nur für die 7170 und nur mit non-labor-FWs geht-, oder anstatt VLANs auf OpenVPN oder ähnliches "Tunneling" zurückgreifen... natürlich alles suboptimal.

Da würde ich eher überlegen, auf eine 7170 umzusteigen...
 
Weißt du denn wo genau das Problem liegt, dass auf die 7050 keine eigenen Kernels drauf gehen, aber auf die 7170 schon? Ich hab gelesen, dass es bei den 2.6er Kernel Probleme wegen eines fehlenden Bootloaders gab. Aber da scheint es ja ne Lösung zu geben, wenn das mit der 7170 geht, oder?

Nen neuen Kernel aus den AVM-Sourcen zu bauen ist nicht das Problem, aber jetzt steh ich damit dem neuen vmlinuz und weiß grad nicht weiter *g* Die weiteren Schritte sollten sein strippen, komrimieren, bootloader... nur das wie ;)

Sebastian.
 
Hi.
Das ist etwas schwer zu erklären. Vielleicht schaust du dir mal an wie das im dsmod (0.2.9_26-14.2) gemacht wird.
Da gibt es in make/linux/patches einen Patch für eva (Bootloader). Dann noch tools/make/lzma2eva.mk und tools/source/lzma2eva.tar.bz2.

MfG Oliver
 
Super, das scheint soweit geklappt zu haben. Ich habe jetzt eine vmlinux.eva_pad und die ist zum Glück auchnoch etwas kleiner als der kernel aus dem alten kernel.image der aktuellen firmware.

Was ich weiter machen wollte ist:
- kernel.iamge zerlegen in kernel und rootfs
- vmlinuz.eva_pad auf genau die gleiche größe padden wie den alten kernel
- kernel.image wieder zusammenbauen
- tichksum kernel.image

Sollte das soweit OK sein, oder hab ich einen wichtigen Schritt übersehen?

Greets
Sebastian.
 
Hi.
Ja, du kannst das so machen. Auch dazu gibt es im dsmod die benötigten Tools.
Code:
1. tar xf firmware.image
2. rmtichksum var/tmp/kernel.image
3. findsquashfs var/tmp/kernel.image
4. cd var/tmp
5. unsquashfs-lzma kernelsquashfs.raw
MfG Oliver
 
Guten morgen ;)

Ich habe am WE eine neues kernel.image gebaut und aufgespielt, leider ohne Erfolg :( Danach waren nur noch alle LEDs wild am blinken. Wenn ich zeit habe werde ich meine Box mal mit einer Seriellen Konsole ausrüsten, damit kann ich vielleicht rausfinden, was meinem Image noch fehlt.

BTW: Ich hab das hier noch nirgendwo Dokumentiert gefunden, aber das put-Kommando zum Recover über ADAM2 hat sich geändert. Das muß jetzt heißen:
Code:
put c:\kernel.image "mtd1"

Greets
Sebastian.
 
Holen Sie sich 3CX - völlig kostenlos!
Verbinden Sie Ihr Team und Ihre Kunden Telefonie Livechat Videokonferenzen

Gehostet oder selbst-verwaltet. Für bis zu 10 Nutzer dauerhaft kostenlos. Keine Kreditkartendetails erforderlich. Ohne Risiko testen.

3CX
Für diese E-Mail-Adresse besteht bereits ein 3CX-Konto. Sie werden zum Kundenportal weitergeleitet, wo Sie sich anmelden oder Ihr Passwort zurücksetzen können, falls Sie dieses vergessen haben.