Portfreigabe für Internettelefonnummern von 1&1?

- die ATA-Boxen registrieren sich und bekommen einen "8-Stunden-CONTACT",
- sie registrieren sich auch rechtzeitig wieder vor Ablauf der 8 Stunden,
- außerdem wird NAT offengehalten, weil alle 30 Sekunden ein UDP Paket in Richtungar 1und1 geschickt wird

Fast, mit einer Nuance: Nicht die Boxen waren nicht mehr erreichbar, sondern der Anruf wurde von Deinem Provider nicht an die Boxen durchgereicht. Für mch heisst das: Du warst mit den ATAs nicht mehr registriert... Ob die 8 h eingehalten wurden, kann ich auch nicht sehen, da ich von jeder Box nur ein REGISTER gesehen habe. Allerdings war die vom Provider angegebene EXPIRES Zeit zum Zeitpunkt des REGISTER noch nicht abgelaufen...

Na ja, ich bin erst mal zum Abwarten verdammt, vielleicht kommt ja wider erwarten doch eine positive Rückmeldung von AVM.

Wider Erwarten ist glaube ich in Zusammenhang mit AVM der falsche Zungenschlag. Ich denke, sie werden sich kümmern. Sind zumindest meine Erfahrungen.

Grüsse
 
Hallo Leute,

ich klinke mich mal ein, denn ich habe ein ähnliches Problem.

Ich habe eine FON ATA hinter einem französischen Providerrouter von Alice in Frankreich und einen Account bei sipgate. Im Providerrouter habe ich die passenden Ports freigegeben und bekomme so 90% Lauffähigkeit hin, d.h. es gibt immer wieder Momente, bei dem die Box nicht erreichbar ist. Ich habe auch probiert, das Portforwarding auf Tip von AVM abzuschalten und über einen STUN-Server zu gehen, insbesodere weil ich auch noch eine 2. Box zusätzlich hinter einer WLAN-Richtfunkstrecke betreiben will.

Ich habe die gleiche Erfahrung gemacht, die Boxen (auch die erste!)sind von Zeit zu Zeit einfach nicht erreichbar.

Hat jemand ne Lösung gefunden?

Gruss
Dirk
 
Hallo,
[Edit Novize: Fullquote von banyoo (Beitrag direkt darüber! :motz:) gelöscht, denn der war so was von überflüssig...]
algo schrieb:
Ich habe das Problem mal dem AVM-Support geschildert und hoffe, dass die evtl. was zur Lösung beitragen können, auch wenn ich nicht so richtig daran glaube...
... ich warte immer noch auf Nachricht von AVM, werde da aber gleich noch mal nachfragen.

Grüße

algo
 
Hallo,

banyoo schrieb:
Ich habe die gleiche Erfahrung gemacht, die Boxen (auch die erste!)sind von Zeit zu Zeit einfach nicht erreichbar.
Auf welche Zeit hast du die Einstellung "Portweiterleitungen des Internetrouters für VoIP offen halten" gestellt?

Viele Grüße

Frank
 
Hallo Frank,
frank_m24 schrieb:
Auf welche Zeit hast du die Einstellung "Portweiterleitungen des Internetrouters für VoIP offen halten" gestellt?
... wenn ich hier mal antworten darf: Bei mir auf das Minimum - 30 Sekunden.

Viele Grüße

algo

[Edit wichard: Fullquote zusammengekürzt]
 
Also neurdings habe ich das gleiche Problem. Ist mir vieleicht vorher nicht aufgefallen, oder ist es möglich, so wie ich vermute das es mit den aktuellen Firmware´s zusammenhängt.

Hat jemand mal in der Voip.cfg den ttl wert geändert und ausprbiert?

wie sollte der stun lauten? stun.1und1.de oder nur 1und1.de, wennich als Voip Provider 1und1 auswähle wird nur 1und1.de eingtragen.

wozu ist der "register_failwaitmax =" wert?
 
Mir ist grad mal aufegfallen das nach der Zwangstrennung 1und1 nicht ereichbar ist, aber sipgate geht.
 
@ Frank:
ich hoffe mal, ich bin hier richtig, auf jeden Fall kamst du mir kompetent vor, was die Verschaltung von mehreren FritzBoxen angeht. Ich würde mir gern mehr als 3 Telefone anschliessen und brauche daher z.B. eine weitere FritzBox. (gibts da auch ne bessere Lösung?). Kann ich dann meine Telefonnummern beliebig verteilen (z.B. die 2 Telekom-Nummern klingeln bei allen Nebenstellen, aber raus telefoniert wird über IP, bei jeder Nebenstelle eine ander IP-Nummer).
Gibt es irgendwo eine Anleitung online, wie die Boxen verschaltet und konfiguriert werden?
Vielen Dank!
 
Hallo Fritzfreund,

hier die Antwort, die ich vom AVM-Support auf dieselbe Frage erhalten habe:

vielen Dank für Ihre Anfrage.

Sie können zwei FRITZ!Boxen hinter Ihrem Router betreiben. Geben Sie im Router, über den Ihre FRITZ!Boxen Internetverbindungen aufbauen, bitte keine Ports für Internettelefonie frei und legen Sie für Internettelefonie keine Portweiterleitungsregeln an.

Tragen Sie stattdessen in der jeweiligen FRITZ!Box für die Internetrufnummer einen STUN-Server ein:

1. Rufen Sie die Benutzeroberfläche der FRITZ!Box auf und wählen Sie im Menü "Telefonie" den Punkt "Internettelefonie" aus.

2. Klicken Sie auf "Erweiterte Einstellungen" und aktivieren Sie die Option "Portweiterleitung des Internet-Routers für Internettelefonie aktiv halten"
(Option nicht immer vorhanden).

3. Wählen Sie das geeignete Zeitintervall aus. Wählen Sie "5 Min.", wenn nicht bekannt ist, wie lange der Router temporäre Portweiterleitungsregeln aufrecht erhält.

4. Klicken Sie auf "Übernehmen" und auf die Schaltfläche zum Ändern der Internetrufnummer.

5. Wählen Sie "Anderer Anbieter" bei "Internettelefonie-Anbieter" aus und überprüfen Sie, ob im Feld "STUN-Server" der STUN-Server des Internettelefonie-Anbieters eingetragen ist.

6. Wenn der STUN-Server eingetragen ist, klicken Sie auf "Abbrechen". Wenn kein STUN-Server eingetragen ist, tragen Sie Internetrufnummer, Benutzername, Passwort, Registrar und STUN-Server ein, und klicken Sie auf "Übernehmen" (alle Daten erhalten Sie von Ihrem Internettelefonie-Anbieter). Wurde für den STUN-Server auch ein Port angegeben, tragen Sie den Port NICHT mit ein.

HINWEIS:
Mit Hilfe eines STUN-Servers ist die FRITZ!Box hinter einem Router aus dem Internet erreichbar, ohne die Einstellungen des Routers zu ändern. Die FRITZ!Box baut eine Verbindung zum STUN-Server auf und ermittelt so die IP-Adresse und den Port, über die sie über den Router aus dem Internet erreichbar ist. Mit dieser IP-Adresse und diesem Port meldet sich die FRITZ!Box dann beim SIP-Registrar (Internettelfonieanbieter) an. Damit der Router den Port für Internettelefonie offen hält, sendet die FRITZ!Box regelmäßig kleine Datenpakete (UDP-Pakete) ins Internet.

Mit freundlichen Grüßen aus Berlin


Vile Grüße
Dirk
 
vieleicht sollte der eintrag mit port sein? "stun.1und1.de:3478" habe es grad mal eingetragen um zu testen. Mit Sipgate geht es. liegt wohl wirklich am stun.

@banyoo frag doch mal den avm support wie lange die Fritzbox die Ports offen hält :)
 
Hallo,

jenswmeyer schrieb:
vieleicht sollte der eintrag mit port sein? "stun.1und1.de:3478" habe es grad mal eingetragen um zu testen.
Nein, auf keinen Fall! Die Box interpretiert diese Portangaben nicht, sondern kommuniziert mit STUN Servern immer auf dem von der IANA vorgegebenen Port 3478. Das ist der Grund, warum der Eintrag "stun.sipgate.net:10000" nicht funktioniert!

Viele Grüße

Frank
 
Dann scheint das Problem wohl beim 1und1 stun server zu liegen. Wie gesagt sipgate funtz nach der zwangstrennng 1a
 
FritzBox als ATA nach Zwangstrennung von außen nicht erreichbar

Hey Zusammen!

Auch ich bastel schon seit einiger Zeit an dieser Konfigurtion rum und wollte mal meine Erfahrungen berichten!

@algo: Oder hast du mittlerweile was neues & funktionierendes herausgefunden (bzgl. AVM-Support)?

Ich betreibe Hier eine FritzBox 7170 als DSL-Modem und Router. An dieser 7170 ist KEIN Telefon angeschlossen.
Per WDS an die 7170 angeschlossen steht in einem anderen Raum eine 7050 - an dieser ist ein ISDN-Telefon mit 2 Rufunummern angeschlossen.
Beide Rufnummern sind Internetrufnummern von - na, wem wohl *g* - 1und1!

Konfiguration 7170:
--> DSL-Zugang 1und1
--> Keine Internettelefonie
--> Wlan: im Repeater-Mode "Basisstation"
--> KEINE Portweiterleitung!

Konfiguration 7050
--> als ATA (Internet über LAN A)
--> per WLAN (WDS-Mode) an 7170 angebunden
--> Internet funktioniert einwandfrei
--> 2 1und1 Internetrufnummern:
*Registrar: sip.1und1.de
*Proxy: sip.1und1.de
*STUN: stun.1und1.de (zur Probe auch mal stun.gmx.net)
--> Option "Portweiterleitung des Internet-Routers für Internettelefonie aktiv halten" auf 30sec. eingestellt


Um es gaanz kurz zu machen: Auch bei mir treten deine Probleme auf, algo!! Leider!

Meine Beobachtungen in dieser Zeit waren:

1. Werden versuchsweise beie Telefonnumern in der 7170 eingerichtet (also direkt am Router) und auch hier das Telefon angeschlossen
fuktioniert alles wunderbar!

2. Ist alles an der 7050 eingerichtet registriert diese auch ordungsgemäß die beiden Rufnummern

3. Alles Toll: Anruden kommen von außen rein - und können nach extern geführt werden.

4. Auch nach einiger Zeit sind die Rufnummern von außen noch zu erreichen (STUN und der oben genanten "Option" sei dank!)

5. Problem: die Zwangstrennung (oder aber ein veranlasster Neustart der 7170)

-->Sobald ich von 1und1 eine neue IP zugewiesen bekomme (Trennung) ist die ATA (7050) von außen nicht mehr zu erreichen
dies liegt ja wohl an der Tatsache dass der nach der IP-Änderung keine Neuregistrierung der Rufnummern vorgenommen wurde.

--> Starte ich die 7050 neu oder telefoniere ich nach extern kommen bis zur nächsten Zwangstrennung alle Anrufe von
außen bei mir an!

--> Offenbar Ändert der 1und1-Server trotz der ankommenden "Hallo Ich bin noch da"-Pakete nichts an der Registrierung der Rufnummer!

--> Probe: Ich habe versuchsweise BEIDE internetrufnummern auch mal in der 7170 registriert (also in BEIDEN Boxen): Und siehe da
Nun "Übersteht die Rufnummer auch die Zwangstrennung - nur ergibt sich nun eben das Problem dass jenachdem welche Box
zuerst "klingelt" die ander nichts mehr tut - nimmt die 7170 also das Gespräch an und leitet es weiter so klingeln das Telefon an
an der 7050 nicht :-(

--> auch wenn ich etwa 30 min nach der Zwangstrennung warte ist das Telefon an der 7050 von außen NICHT zu erreichen


Das Problem liegt ja wohl offensichtlich an 1und1: Deren Server halten sich nicht an den EXPIRES-Wert von 30min und geben
der Rufnummer eine "Lifetime" von 8h - während dieser 8h käme die 7050 nicht im Traum auf die Idee den Registrierungsvorgang
zu wiederholen - es sei denn man telefoniert raus!


Gut - so weit war das nur eine Zusammenfassung dessen was einige sehr kluge Köpfe hier schon herausgefunden haben verbunden mit dem
was ich beobachten konnte.

Wie sieht es jedoch mit einer Lösung aus??

Zum einen wäre es ja toll wenn 1und1 diesen "8h-Mist" lassen würde. Hmm, OK vergessen wir es.
Aber selbst dann wären ja die Telefone an den ATAs nach einer IP-Adresserneurung für max. 30 min nicht zu erreichen!

Alternative?

Ich frage mich jedoch langsam: Hier müsste es doch einige Menschen geben die diese - oder eine ähnliche Konstellation
betreiben: FritzBox hinter Router

Wie haben diese das zum Laufen bekommen? Bei denen müsste doch auch das Problem der Neuregistrierung nicht vor Ablauf on 8h bestehen oder?
Also zumindest bei allen 1und1-Kunden?

Ist es nicht möglich ein Skript in den Boxen einzubinden welches z.B. alle 5min eine STUN-Serverabfrage macht und die erhaltene externe IP mit der
von der vorherigen Abfrage vergleicht? Sollten diese IPs unterschiedlich sein so würde ein Neustart der Box reichen und alles wäre im Lot!

Deshalb nochmal meine Frage an alles 1und1-Kunden: Wie läuft das bei euch mit einer FritzBox hinter einem Router?



Bin auf Antworten gespannt (vor allem von algo)- ich bleibe dran (Jetzt hat mich mein Ehrgeiz gepackt *g*) :rock:

Gruß

Steven
 
Also ich kann nur sagen bei läuft es jetzt 1a.

Router 7170 mit FRITZ!Box Fon WLAN 7170, Labor-Version 29.04.33ds-0.2.9_26-14 (VPN)
Box wird per crond um 3:55 rebootet

und 2xFon Classic Firmware-Version 06.04.27ds-0.2.9 als ATA

über crond

0-59/5 * * * * voipd -R "Register voipd alle 5min"
0 4 * * * modsave all
4 4 * * * reboot

Portweiterleitung alle 2min offen hallten.
 
Hallo,

schandmaennchen schrieb:
Offenbar Ändert der 1und1-Server trotz der ankommenden "Hallo Ich bin noch da"-Pakete nichts an der Registrierung der Rufnummer!
Richtig. Wenn du dir die Pakete ansiehst (Paketmitschnitt), wirst du erkennen, das sie wirklich keinerlei Nutzdaten enthalten. Sie dienen also wirklich nur der Erhaltung der NAT Zuordnungs-Tabellen des lokalen Routers. Daraus kann 1&1 gar keine Registrierungsinformationen ableiten.

schandmaennchen schrieb:
Das Problem liegt ja wohl offensichtlich an 1und1: Deren Server halten sich nicht an den EXPIRES-Wert von 30min und geben der Rufnummer eine "Lifetime" von 8h - während dieser 8h käme die 7050 nicht im Traum auf die Idee den Registrierungsvorgang zu wiederholen - es sei denn man telefoniert raus!
Nein, das stimmt so definitiv nicht. Ich hab mal für ein vollkommen anderes Problem ausführlich und ganze Nächte durch Paketmitschnitte auf DSL-Ebene angefertigt, dabei ist klar zu sehen, dass auch die UI Accounts maximal nach dem als TTL in der Box konfigurierten Wert (Standard 30 Min) neu registriert werden. Danach müsste also die Slave Box wieder erreichbar sein, es sei denn, du hast ein generelles Problem in der Konfiguration.

schandmaennchen schrieb:
Ich frage mich jedoch langsam: Hier müsste es doch einige Menschen geben die diese - oder eine ähnliche Konstellation betreiben: FritzBox hinter Router
Ich hab eine Zeit lang testweise eine 7050 hinter einer 7170 betrieben (allerdings per "Internet über LAN, nicht per WDS), beide Boxen mit den selben VoIP Accounts (u.a. 1&1, GMX): Beide klingelten zuverlässig bei reinkommenden VoIP-Anrufen. Auch mit einem Softphone hinter der 7170 geht das reibungslos.

Da es im Modus "Internet über LAN" einwandfrei funktioniert, bei WDS aber nicht, würde ich dort mal ansetzen. Vielleicht ist der Cronjob wirklich die einzige Möglichkeit.

Viele Grüße

Frank
 
Hey,

@jenswmeyer: Das klingt ja nicht schlecht!
Aber eigentlich sollte der "voipd -R" Befehl im ATA doch reichen, oder?
Für was lässt du hier

0 4 * * * modsave all
4 4 * * * reboot

laufen?

Nein, das stimmt so definitiv nicht. Ich hab mal für ein vollkommen anderes Problem ausführlich und ganze Nächte durch Paketmitschnitte auf DSL-Ebene angefertigt, dabei ist klar zu sehen, dass auch die UI Accounts maximal nach dem als TTL in der Box konfigurierten Wert (Standard 30 Min) neu registriert werden. Danach müsste also die Slave Box wieder erreichbar sein, es sei denn, du hast ein generelles Problem in der Konfiguration.

Ich hab eine Zeit lang testweise eine 7050 hinter einer 7170 betrieben (allerdings per "Internet über LAN, nicht per WDS), beide Boxen mit den selben VoIP Accounts (u.a. 1&1, GMX): Beide klingelten zuverlässig bei reinkommenden VoIP-Anrufen. Auch mit einem Softphone hinter der 7170 geht das reibungslos.

Da es im Modus "Internet über LAN" einwandfrei funktioniert, bei WDS aber nicht, würde ich dort mal ansetzen. Vielleicht ist der Cronjob wirklich die einzige Möglichkeit.

Also ich habe das soeben mal ausprobiert:

WLAN --> Aus
ATA per Lan A an die 7170, neustart

Resultat: Alles OK, externe Anrufe kommen rein!
Dann: Neustart des Routers (Also "Zwangstrennung", vergabe einer neuen externen IP)

Hier war selbst nach 40 min die Telefonnummern an der 7050 nicht erreichbar - Sie blieben offenbar schon bei 1und1 hängen!
--> Rufnummern nicht auf neue IP registriert!

Ich bin dann kurz per Telnet in den ATA (7050):

"voipd -R"

--> Alles wieder OK, von extern erreichbar!

Also doch cronjob - NUR möchte ich sehr ungern mit Kanonen auf Spatzen schießen: Die IP wird ja normalerweise nur alle 24h erneuert. Würde ich "voipd -R" alle 10 min per crond oder als Änderung in der Konfig (Schleife) laufen lassen so wäre dass wohl total übetrieben, oder? :noidea:

Allerdings - es nur einmal nach einem Neustart des Masters zu tun wäre auch schlecht - was mache ich dann wenn mittags die DSL-Verbindung mal kurz abreißt (Wartung, o.ä.)?

Elegant wäre also die Kontrolle der öffentlichen IP am ATA alle 5 Minuten - falls sich diese dann geändert hat --> Neustart!

Meint Ihr sowas ist zu realisieren? Oder doch besser einfach alle 5 Minuten neu registrieren?

Lieben Gruß
Steven
 
Hallo,

schandmaennchen schrieb:
Elegant wäre also die Kontrolle der öffentlichen IP am ATA alle 5 Minuten - falls sich diese dann geändert hat --> Neustart!
hmm, die Idee hört sich gut an.

Es gab mal Versuche hier im Forum, bei Wechsel der WAN IP eine Aktion auszulösen. Ich glaube, es ging um Kabelmodems damals (da bin ich mir aber nicht sicher :gruebel:). Da war die IP aber lokal auf der Box verfügbar ... glaube ich.
Aber dort würde ich trotzdem mal ansetzen, die eigene IP über ein nslookup oder einen Ping herauszufinden, sollte ja machbar sein (über einen dyndns Account z.B.). Der Rest dürfte sich dann nicht mehr groß unterscheiden.

Viele Grüße

Frank
 
0 4 * * * modsave all
speichert alles vom DS-Mod z.b Anrufliste vom callmonitor, mache ich weil ich die Box kurz nach dem reboot vom router auch rebooten lasse

4 4 * * * reboot

Reboot der box
 
Hallo zusammen!

danke für eure Rückantworten - ich bin immer noch dran ;)
Habe eben jedoch einen herben Rückschlag hinnehmen müssen :noidea:

--> Router hat seit 17h die gleiche IP - im ATA sind beide Rufnummern registriert
--> Allerdings: Nach einer unbestimmten Zeit (ich konnte den Zeitpunkt nach dem letzt voipd -R noch nicht ausmachen - es wird jedoch nach ein paar Stunden sein) sind die Nummern an der ATA wieder nicht erreichbar :-(
Obwohl Sie den Status "Registriert" in der Oberfläche haben!

Es scheint also nicht nur an der fehlenden Neuregistrierung der Nummern nach eine Zwangstrennung zu liegen :confused:

Ich muss leider gestehen dass ich von den Protokollen bzgl. der Internettelefonie nicht so die Ahnung habe... Ich hoffe Ihr könnt mir helfen!

Offenbar geht von meinem ATA keine selbstständige Neuregistrierung der Nummern aus (nach 30 min). Sollte laut frank_m24 ja aber eigentlich der Fall sein?
Meint Ihr das könnte daran liegen? "Verliert" die Registrierung der Rufnummern bei 1und1 nach einiger Zeit die Gültigkeit? Das würde ja erklären warum ich dann ein paar Stunden ereichbar bin - und dann plötzlich nicht mehr!


Wie dem auch sei - offenbar komme ich nicht um eine "voipd -R"-Schleife herum :-(

Vielleicht mache ich ja auch einnen Fehler...
Ich habe mich daher auch mal ein wenig mit dem IP-Prüfungsskript befasst:

Unter http://www.ip-phone-forum.de/showthread.php?t=65166&page=2

ist dieses Skript zu erhalten

Code:
 #!/bin/sh
while true
do
wget -q 
http://checkip.dyndns.org/index.html --output-document=/var/tmp/neu.ip
if [ "`cat /var/tmp/neu.ip`" = "`cat /var/tmp/alt.ip`" ]
then echo "No new IP";
else wget -q 
http://twelve:[email protected]/nic/update?hostname=twelve.dyndns.org - 
-output-document=/var/tmp/upd.ip
echo "New IP";
cat /var/tmp/upd.ip;
rm /var/tmp/upd.ip;
fi
rm /var/tmp/alt.ip
mv /var/tmp/neu.ip /var/tmp/alt.ip
sleep 3600
done

Damit lässt sich ja was machen!

Problem ich bin ein Windoof-Nutzer - habe deshalb von den Grundlagen des Linux in der Box vorsichtig gesagt keine Ahnung!

Aber ich habe mich schonmal mit ein paar Dingen befasst! Hab Ihr zufällig eine gute Quelle um sich etwas Näher mit dem Software-Aufbau der Box, bzw. Basics rund um die Linux-Befehle zu beschäftigen? Wäre klasse!

Allerdings bringt das ja alles nichts wenn die Rufnummern unabhängig von der Neuvergabe der IP plötzlich nicht mehr registriert sind.

Habt Ihr eine Ahnung warum sich meine Box nicht neu registriert?


...ich bastel weiter!

Gruß
Steven
 
Offenbar geht von meinem ATA keine selbstständige Neuregistrierung der Nummern aus (nach 30 min). Sollte laut frank_m24 ja aber eigentlich der Fall sein?

Warum sollte das so sein? Ich nehme an, Du meinst das SIP REGISTER? Jeder einigermassen standardkonforme Client registriert sich erst kurz vor Ablauf der im STATUS 200 OK auf das REGISTER vom Server im "expires" Headertag angegebenen Zeitspanne oder eben nach "ungewöhnlichen" Ereignissen (loss of connectivity, IP change etc.). Irgendwie taucht das Problem mit den verlorenen Registierungen im Zusammenhang mit FB Tandems (DSL Modem und ATA) immer wieder auf. Das Problem ist wahrscheinlich, dass die ATA hinter einem zwangsgetrennten Modem von der Trennung nichts mitbekommt, also auch keine erneute Registrierung vornimmt, wie z.B. die am dichtesten am DSL liegende Box. Die für die ATA damit noch bestehende Registrierung mit der alten IP ist damit hinfällig.

Mit Deiner Idee: "Neustart bei IP Change" bist Du nicht soweit weg von einer Lösung. Auf einem PC hinter den Boxen ist sowas wahrscheinlich auch schnell programmiert. Aber auf den Boxen ... keine Ahnung :(

Grüsse
 
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.