[Offen] FB hinter Kabelmodem: 2 Interfaces, 2 IPs, Telefon + Internet unabhängig

Chatty

Aktives Mitglied
Mitglied seit
13 Mrz 2006
Beiträge
1,797
Punkte für Reaktionen
37
Punkte
48
Hallo,

mir schwirrt seit einiger Zeit folgendes Projekt vor:

. . . . . . . . . . . [TV-Dose]
. . . . . . . . . . . . . . |
. . . . . . . . . . . [THG540]
. . . . . . . . . . . . . . |
. . . . . . . . . . . . [7270] - soll zwei (virtuelle?) Interfaces mit eigenen MAC-Adressen und somit öffentlichen IPs besitzen


Dass das Vorhaben realistisch ist, zeigt folgende bereits funktionierende Konstellation, die zwei öffentliche IPs verwendet:

. . . . . . . . . . . [TV-Dose]
. . . . . . . . . . . . . . |
. . . . . . . . . . . [THG540]
. . . . . . . . . . . . . . |
. . . . . . . . [1. 7270 als Switch]
. . . . . . . . . . . . . . /\
. . . . . . . . . . . . . ./..\
[2. 7270 als Router] . . [beliebiger PC]

Zur Vollständigkeit die benutzte Konfiguration:
Switch: Internetzugang über LAN 1 / IP-Client / IP-Adresse manuell festlegen (alles 192.169.x.y)
Router: unveränderte KDG-Konfiguration, also Internetzugang über LAN 1 / NAT-Router / DHCP aktiv / Tel.nr. eingerichtet & funktionstüchtig
Beobachtung: Der PC erreicht hier volle Geschwindigtkeit, über den Router gerade mal die Hälfte (klar, hier muss die arme FB ja auch NAT machen - trotzdem schade).



Welche Vorteile ergeben sich dadurch:
  • man lernt einiges über Netzwerkkonfiguration
  • Telefonie und Internet sind (relativ) unabhängig - Stichwort: IP-Wechsel
  • weitere IP-Adressen möglich - wer wollte sich nicht schon mal selbst anpingen?
  • etc.


Zu lösende Probleme:
  • mehrere Interface erstellen
    • X ifconfig dsl:0 ether 11:22:33:44:55:66 ändert auch die MAC des Hauptinterface - in Summe bleibt es bei einer MAC, einer IP, ...
    • X udhcpc -c <andere MAC> -i dsl:1 funktioniert leider auch nicht (oder dsl, lan, lan:1, eth0, eth0:1, ...)
    • ? Modul ebtables? Der Autor antwortete mir: You can use ebtables to change the source MAC address. For ebtables to see the traffic, you will have to add your virtual interface to a bridge (which makes the bridge have only one port) and send traffic over the bridge instead of directly over the virtual interface. I don't think brouting will help you here because the bridge will need an IP address instead of the virtual interface.
    • ? Switch in "einzelne Interfaces" aufteilen (cpmaccfg) und alle per dhcp eine IP holen lassen
    • ? an das Interface eine Bridge mit eigener MAC hängen (brctl) und über diese eine IP anfordern (keine Ahnung, ob das geht)
    • weitere Ideen?
  • VoIP-Routing lösen
    • Internet läuft auf dem Standard-Interface, somit können alle angeschlossenen PCs surfen
    • ? Alternative 1: dtmfbox patchen, damit man sie ans zweite Interface binden kann (ähnlich 'wget --bind-address=1.2.3.4 ...') und dann den voipd an der dtmfbox anmelden
    • ? Alternative 2: das IP-Routing für *.kabelphone.de anpassen
  • etc.

Das Thema wird dann - je nach Mitarbeit - von mir ständig erweitert...
 
Zuletzt bearbeitet:
Erstmal zur Klärung: Du kannst bei KD mehrere Geräte "anmelden", und alle bekommen eine eigene öffentliche IP zugewiesen??
Oder hast du bei denen "zusätzlich" eine feste IP geordert, die in der 7270 eingetragen wurde??

Woher bezieht denn der PC seine IP, also wo ist der DHCP aktiviert?

Jörg
 
DHCP macht freundlicherweise KDG. Nirgends ist eine feste IP eingestellt (ok, außer beim Switch, aber das liegt nur daran, dass die 7270 ja eigentlich ein Router ist *g*).

PS: Viele Kabelbetreiber erlauben Kunden mehrere öffentliche IPs... einfach mal die MAC vom Router wechseln... schwupps hat er eine neue. Das kann man ein paar mal machenn. Danach bockt der DHCP-Server ne Weile ;-)
 
Interessant fuer mich waere: Inwieweit ist die 7270 nach dem THG540 eigentlich Pflicht?

Wuerde das prinzipiell mit einem anderen Router und SIP Server als der 7270 auch laufen?

Ich denke dabei an ein eigenes System (Router/Asterisk auf Linux). Dann waere das Problem mit den 'eigenen MAC-Adressen' keines.

Dazu muesste KD u.a. natuerlich die SIP Konfiguration/Passwoerter offenlegen.

Oder ist die 7270 von KD wieder mal so zurechtgebogen worden, dass das Ganze nur mit der laeuft?

- sparkie
 
Läuft dahinter, was du möchtest. Einzig die VoIP-Daten rückt KDG nur an die KDG-7270 raus. Aber hast du die einmal extrahiert (*hust* allcfgconv *hust*), kannst du alles nutzen, wie es dir passt.

PS: Hier ein Beweis bzgl. keine 7270 hinter Modem.
 
.. o.k., aber die "alte" IP bleibt erhalten (erreichbar), nachdem du eine neue bekommen hast??
Also PC und Box haben jeweils eine verschiedene offizielle IP bekommen, und beide sind (von extern!) weiterhin erreichbar?

Ansonsten hätte ich zwei Ideen:
- Switch in "einzelne Interfaces" aufteilen (cpmaccfg) und alle per dhcp eine IP holen lassen (das müsste eigentlich so gehen)
- An das Interface eine Bridge mit eigener MAC hängen (brctl), und über das Bridge-Interface eine IP anfordern (keine Ahnung, ob das geht)

Jörg
 
Klingt das so unglaublich? Klick doch auch mal auf meinen PS-Link. Aber ja, PCs am Router sind unter der einen Adresse erreichbar und der gesonderte PC unter der anderen. Auch konnte ich noch problemlos über 7270 telefonieren.

So, jetzt aber zu deinen Ideen. Ich hatte darauf gehofft, dass sowas in dir steckt :)
 
Aber hast du die einmal extrahiert (*hust* allcfgconv *hust*), kannst du alles nutzen, wie es dir passt.

klingt ja hoechst interessant. Das heisst wenn die VoIP-Daten bekannt sind, kann ich einen normalen Asterisk mit deren SIP Server verbinden? Ist das wirklich sicher?

Ist natuerlich die Frage ob die Huerden die KD gebaut hat nicht doch etwas hoeher sind:)

Falls das tatsaechlich so leicht ginge waere KD eine gute Wahl. Die bieten in gewissen Staedten ja bereits 100 MBit/s.

- sparkie

[EDIT]
So, jetzt aber zu deinen Ideen. Ich hatte darauf gehofft, dass sowas in dir steckt :)

kein Problem!

einfach FB rauswerfen und ersetzen durch diese Hardware: http://www.ip-phone-forum.de/showpost.php?p=1598657&postcount=8
und freuen. Dann loesen sich naemlich die hier geschilderten Probleme mit der FB einfach in Wohlgefallen auf, z.B. dieses:

Beobachtung: Der PC erreicht hier volle Geschwindigtkeit, über den Router gerade mal die Hälfte (klar, hier muss die arme FB ja auch NAT machen - trotzdem schade).[/SIZE]
[/EDIT]
 
Zuletzt bearbeitet:
Du kannst die SIP-Daten sogar an einem Nicht-KDG-Anschluss nutzen... aber vorher die AGBs checken, gell? ;-)
Und aktuell zahlt man dort ca. 1,30¤/Monat, wenn einem 6MBit/s reichen.

Und ich will das ganze mit der 7270 machen, da ich sehr auf Energieeffizienz stehe :) Außerdem ist alles von AVM (bis auf den Inhalt dieses Threads) so wunderbar konfigurierbar - ganz ohne Gefummel. Die ganzen Logs, Fernadministration und und und...

Aber jetzt bitte BTT!
 
Zuletzt bearbeitet:
Aber jetzt bitte BTT!

ja klar, danke fuer die Infos!

Ich hatte bislang immer nur DSL mit selber entwickeltem Linux Router.

Im Moment verstehe nicht was eigentlich ueberhaupt noch das Problem ist:

Wenn du die 7270 durch einen Linux Router ersetzen kannst (wie du schreibst), dann hast du doch alle Freiheiten der Welt alles so zu konfigurieren wie's dir passt?

Einfach ueber DHCP vom Modem eine IP Adresse geben lassen - fertig. Der Rest geht wie gewohnt am ppp0 Interface.

Die FB waere dann das allerste was ich rauswerfen wuerde.

- sparkie
 
Zuletzt bearbeitet:
Geht cpmaccfg mit der 7270?
Du bräuchtest auf jeden Fall einen DHCP-Client (z.B. udhcpc aus der Busybox) und brctl (für den Test von Möglichkeit 2).

Und um später verschiedene Internet-Zugänge auf einer Box nutzen zu können, musst du noch irgendwie eine "Zuordnung" schaffen, z.B. mit iptables.

Jörg

PS: Ich muss mich jetzt für heute erstmal ausklinken...

EDIT 2: Vielleicht reicht es sogar, udhcpc -c <andere MAC> -i dsld:1 zu nutzen??
 
Zuletzt bearbeitet:
Also die nur-udhcpc-Variante funktioniert leider auch nicht. Nicht mal auf eth0, da sollte doch die Fritz!Box eigentlich ne IP vergeben, oder? Kommt jedenfalls nur "Sending discover..." :-(

Also ich habe mal die statisch gelinkten Versionen (s. #1) probiert:
Code:
# ./[B]cpmaccfg info[/B]
Internal ports: 1
External ports: 4
# ./[B]cpmaccfg gsmc[/B]
Devices: 2
WAN is port: 0
Device 1: name=wan, portmask=0x21
Device 2: name=eth0, portmask=0x2e
# ./[B]brctl show[/B]
bridge name     bridge id               STP enabled     interfaces
lan             8000.0024feed9b54       no              eth0
                                                        ath0
guest           8000.0024feed9b54       no
Sagt mir im Moment gar nichts, aber ich würde sagen: es läuft.
 
Zuletzt bearbeitet:
Also, Idee wäre: Box auf "internet per LAN1" zu lassen, und einen weiteren Port abzutrennen.
Da ich das nicht testen kann, nur so aus dem Kopf:
Code:
cpmaccfg ssms wan 0x21 mywan 0x22 eth0 0x2c
cpmaccfg ssm special
sollte dazu führen, dass du ein zusätzliches Interface "mywan" auf LAN2 hast. Klappt das? Wenn ja:
Code:
ifconfig mywan hw ether <andere MAC>
udhcpc -i mywan
Wenn das geht, udhcpc-Skript anlegen :
Code:
cat << 'EOF' > /var/tmp/udhcpc.script
#!/bin/sh
[ -z "$subnet" ] || NM="netmask $subnet"
[ -z "$broadcast" ] || BC="broadcast $broadcast"
case "$1" in
	deconfig)
		/sbin/ifconfig $interface 0.0.0.0
		;;

	renew|bound)
		/sbin/ifconfig $interface $ip $NM $BC
		;;
esac
exit 0
EOF

chmod +x /var/tmp/udhcpc.script
Und dann:
Code:
udhcpc -i mywan -s /var/tmp/udhcpc.script

Jörg
 
nur udhcpc --> #12

Den Rest muss ich später probieren, wenn ich etwas mehr Zeit habe.

Hattest du bei cpmaccfg das hier beachtet? Ich habe ja ne V2, aber stimmt das mit deinen Werten überein?
Und wenn das klappen sollte, ist dann die Buchse LAN2 unbrauchbar, aber dafür kann ich Programm auf der Box dann an das zweite Interface binden?
 
Zuletzt bearbeitet:
Vermutlich müsstest du es mit "lan" versuchen? Also "udhcpc -i lan" ??

Und: Ja, so war es gedacht. Dann wären nur noch LAN3 und LAN4 "echte" LAN-Interfaces (als "eth0"). LAN2 wäre ein weiteres Interface, dass man dann "weiter bearbeiten" könnte ;-)


Jörg

EDIT Zum cpmaccfg: Ich hab es versucht ;-)
LAN1=0x01 LAN2=0x02 LAN3+LAN4=0x04+0x08=0x0c
verbunden mit 0x20 für den CPU-Port:
LAN1=0x21 LAN2=0x22 LAN3+LAN4=0x24+0x28=0x2c
 
Zuletzt bearbeitet:
Code:
# ./busybox26 udhcpc -i lan
udhcpc (v1.16.0) started
Sending discover...
Sending discover...
Sending discover...
Passiert mit allen Schnittstellen die mir ifconfig präsentiert.
 
Ist denn im LAN ein DHCP? Sonst müsstest du natürlich das IF zum Modem nutzen ("udhcpc -i dsl" oder "udhcpc -i wan", wie auch immer das Interface heißt)

Jörg

PS: Glückwunsch Chatty_1000.png
 
Na FB verteilt im (W)LAN schön die 192.168.178.x. Und das Modem vermittelt vom KDG-dhcpd auch jeder MAC-Adresse eine öffentliche.

Ich geb dir mal nen Überblick über meine Schnittstellen:
Code:
# ifconfig
# ifconfig
ath0      Link encap:Ethernet  HWaddr 00:24:xx:xx:xx:23  
          UP BROADCAST RUNNING ALLMULTI MULTICAST  MTU:2290  Metric:1
          RX packets:74915 errors:0 dropped:0 overruns:0 frame:0
          TX packets:118412 errors:0 dropped:10 overruns:0 carrier:0
          collisions:0 txqueuelen:1000 
          RX bytes:22032683 (21.0 MiB)  TX bytes:123744143 (118.0 MiB)

cpmac0    Link encap:Ethernet  HWaddr 00:24:xx:xx:xx:54  
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:353770 errors:0 dropped:0 overruns:0 frame:0
          TX packets:84891 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000 
          RX bytes:141119628 (134.5 MiB)  TX bytes:25391460 (24.2 MiB)

dsl       Link encap:Point-to-Point Protocol  
          inet addr:192.168.178.1  P-t-P:192.168.178.1  Mask:255.255.255.255
          UP POINTOPOINT RUNNING NOARP ALLMULTI MULTICAST  MTU:1500  Metric:1
          RX packets:98466 errors:0 dropped:0 overruns:0 frame:0
          TX packets:72943 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:100 
          RX bytes:85937068 (81.9 MiB)  TX bytes:22825066 (21.7 MiB)

eth0      Link encap:Ethernet  HWaddr 00:24:xx:xx:xx:54  
          UP BROADCAST ALLMULTI MULTICAST  MTU:1500  Metric:1
          RX packets:0 errors:0 dropped:0 overruns:0 frame:0
          TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:128 
          RX bytes:0 (0.0 B)  TX bytes:0 (0.0 B)

guest     Link encap:Ethernet  HWaddr 00:24:xx:xx:xx:54  
          inet addr:192.168.179.1  Bcast:192.168.179.255  Mask:255.255.255.0
          UP BROADCAST RUNNING ALLMULTI MULTICAST  MTU:2290  Metric:1
          RX packets:855 errors:0 dropped:0 overruns:0 frame:0
          TX packets:1056 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:0 
          RX bytes:169769 (165.7 KiB)  TX bytes:760665 (742.8 KiB)

lan       Link encap:Ethernet  HWaddr 00:24:xx:xx:xx:54  
          inet addr:192.168.178.1  Bcast:192.168.178.255  Mask:255.255.255.0
          UP BROADCAST RUNNING ALLMULTI MULTICAST  MTU:1500  Metric:1
          RX packets:74138 errors:0 dropped:0 overruns:0 frame:0
          TX packets:78753 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:0 
          RX bytes:20621226 (19.6 MiB)  TX bytes:82910876 (79.0 MiB)

lan:0     Link encap:Ethernet  HWaddr 00:24:xx:xx:xx:54  
          inet addr:169.254.1.1  Bcast:169.254.255.255  Mask:255.255.0.0
          UP BROADCAST RUNNING ALLMULTI MULTICAST  MTU:1500  Metric:1

lo        Link encap:Local Loopback  
          inet addr:127.0.0.1  Mask:255.0.0.0
          inet6 addr: ::1/128 Scope:Host
          UP LOOPBACK RUNNING  MTU:16436  Metric:1
          RX packets:1814 errors:0 dropped:0 overruns:0 frame:0
          TX packets:1814 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:0 
          RX bytes:274363 (267.9 KiB)  TX bytes:274363 (267.9 KiB)

wan       Link encap:Ethernet  HWaddr 00:24:xx:xx:xx:54  
          UP BROADCAST RUNNING PROMISC MULTICAST  MTU:1500  Metric:1
          RX packets:353768 errors:0 dropped:0 overruns:0 frame:0
          TX packets:84891 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:32 
          RX bytes:141119508 (134.5 MiB)  TX bytes:25391460 (24.2 MiB)

wifi0     Link encap:Ethernet  HWaddr 00:24:xx:xx:xx:23  
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:139677 errors:0 dropped:0 overruns:0 frame:3058
          TX packets:119787 errors:158 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000 
          RX bytes:45886653 (43.7 MiB)  TX bytes:129355718 (123.3 MiB)
          Interrupt:80 Memory:c0240000-c0250000
Kannst du bei dir denn einen lokalen Response verursachen?
 
Was meinst du, eine Antwort "von dir selbst"? Das macht ja keinen Sinn, es geht nur von außen. Wenn du ein ein Brücken-Interface hast, musst du das nehmen:
Code:
# LAN4 abtrennen als eth4 (auf Speedport W701V)
/var/tmp # ./cpmaccfg ssms eth0 0x27 eth4 0x28
/var/tmp # ./cpmaccfg ssm special
Setting switch_mode to 'special' (6).
/var/tmp # 
/var/tmp # ifconfig  eth4 192.168.188.222
# nur das Interface: Geht.
/var/tmp # ./busybox26 udhcpc -i eth4
udhcpc (v1.16.0) started
Sending discover...
Sending select for 10.100.254.41...
Lease of 10.100.254.41 obtained, lease time 1800

# Jetzt als Brücke "mylan"
/var/tmp # brctl addbr mylan
/var/tmp # ifconfig eth4 0.0.0.0
/var/tmp # brctl addif mylan eth4
/var/tmp # ifconfig mylan 192.168.188.222

# Interface geht nicht ...
/var/tmp # ./busybox26 udhcpc -i eth4
udhcpc (v1.16.0) started
Sending discover...
Sending discover...

# ... Brücke geht
/var/tmp # ./busybox26 udhcpc -i mylan
udhcpc (v1.16.0) started
Sending discover...
Sending select for 10.100.254.41...
Lease of 10.100.254.41 obtained, lease time 1800
/var/tmp #

Jörg
 
Ich meinte genau, was du eben gemacht hast: deine FB (multid) lokal um eine IP bitten. Ich hab deins mal C&P:
Code:
# ./cpmaccfg ssms eth0 0x27 eth4 0x28
# ./cpmaccfg ssm special
Setting switch_mode to 'special' (6).
# ifconfig  eth4 192.168.188.222
# ./busybox26 udhcpc -i eth4
udhcpc (v1.16.0) started
Sending discover...
Sending discover...
Sending discover...
Schlimmer noch, danach war sogar keine Verbindung mehr ins Inet möglich. "Neu verbinden" --> nichts. Dann noch:
Code:
# ./cpmaccfg ssm normal

# dsld -s
# dsld -i -n
Sep  2 22:41:05 dsld[2712]: INEToverLAN: interface wan not ready, waiting (9)
Sep  2 22:41:06 dsld[2712]: INEToverLAN: interface wan not ready, waiting (8)
Sep  2 22:41:07 dsld[2712]: INEToverLAN: interface wan not ready, waiting (7)
Sep  2 22:41:08 dsld[2712]: INEToverLAN: interface wan not ready, waiting (6)
Sep  2 22:41:09 dsld[2712]: INEToverLAN: interface wan not ready, waiting (5)
Sep  2 22:41:10 dsld[2712]: INEToverLAN: interface wan not ready, waiting (4)
Sep  2 22:41:11 dsld[2712]: INEToverLAN: interface wan not ready, waiting (3)
Sep  2 22:41:12 dsld[2712]: INEToverLAN: interface wan not ready, waiting (2)
Sep  2 22:41:13 dsld[2712]: INEToverLAN: interface wan not ready, waiting (1)
Sep  2 22:41:14 dsld[2712]: INEToverLAN: interface wan not ready, waiting (0)
Sep  2 22:41:15 dsld[2712]: INEToverLAN: interface wan not usable, exit
Half nur Reboot. WLAN ging ja noch... :)

Was nun?

PS: Danke für die Glückwünsche... gar nicht mitbekommen.


EDIT: Maaaaaan! Hier steht ja: "7270 Tantos-Switches: mit den von AVM bereitgestellten Headerdateien ist nur ein Auslesen der aktuellen Settings möglich, jedoch nicht ersichtlich, welche Register beschrieben werden müssen, um Einstellungen zu setzen." :mad:
Jetzt muss ich mir aus der Familie erstmal den W900V zurückholen. :-(

Oder kennt jemand...?
Code:
# cat /proc/avalanche/developers
...
Suraj Iyer         - CPMAC (2.4.17)
...
Mit welchem Binary ändert denn AVM den Switch? Das müsste man doch rev. engineeren können? ;-)
 
Zuletzt bearbeitet:

Zurzeit aktive Besucher

Statistik des Forums

Themen
246,159
Beiträge
2,247,074
Mitglieder
373,678
Neuestes Mitglied
brainkennedy
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.