FTTH Pingzeiten von über 10 Sekunden

MCPO

Member
Hallo zusammen,

ich hoffe ich poste den Thread an der richtigen Stelle. Es geht vermutlich eher um allgemeine Netzwerksettings, als um OpenBSD direkt. Nun denn, ich benutze OpenBSD 7.7 und habe seit ein paar Tagen endlich mein FTTH angeschlossen bekommen. Mit der Hardware des ISPs läuft alles super, sowohl Bandbreite, also auch Ping-Latenzen zeigen die erwarteten Werte. Tausche ich den ISP-Router gegen meinen OpenBSD Router sehe ich Ping-Latenzen von über 10 Sekunden für jedes ICMP-Paket.

Hier ein Auszug meiner Konfigurationen:

router# ifconfig -a
pppoe0: flags=8851<UP,POINTOPOINT,RUNNING,SIMPLEX,MULTICAST> mtu 1492
index 6 priority 0 llprio 3
dev: vlan35
state: session
sid: 0x1 PADI retries: 3 PADR retries: 0 time: 00:24:51
sppp: phase network authproto pap authname "redacted"
dns: z.z.z.z z.z.z.z
groups: pppoe egress
status: active inet y.y.y.y --> x.x.x.x netmask 0xffffffff


em0: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> mtu 1500
lladdr 00:0d:b9:41:68:14
index 1 priority 0 llprio 3
media: Ethernet autoselect (1000baseT full-duplex)
status: active

vlan35: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> mtu 1500
lladdr 00:0d:b9:41:68:14
index 7 priority 0 llprio 3
encap: vnetid 35 parent em0 txprio packet rxprio outer
groups: vlan
media: Ethernet autoselect (1000baseT full-duplex)
status: active


router# cat /etc/hostname.pppoe0
inet 0.0.0.0 255.255.255.255 NONE mtu 1492 \
pppoedev em2 authproto pap \
authname 'redacted' authkey 'redacted' up
dest 0.0.0.1
#!/sbin/route add default -ifp pppoe0 0.0.0.1



router# cat /etc/hostname.em0
up mtu 1500

router# cat /etc/hostname.vlan35
vlandev em0
vlan 35
up


router# cat /etc/pf.conf
...
match in all scrub (no-df random-id)
match out on pppoe0 scrub (max-mss 1452)
...


Wie man sieht, kommt die PPPoE-Verbindung zustande. Bei der MTU habe ich Hinweise befolgt, die mit ChatGPT empfohlen hat, aber dieses ist nun mit seinem Latein am Ende ich auch. Mein Tip wäre, dass MTU/Fragmentierung das Problem sind, aber wirklich ins Auge springen tut mir hier nichts. Weiß jemand mehr und kann mr hier weiterhelfen?

Vielen Dank schonmal
 
[Erster Teil gelöscht, das war ein nachweihnachtlicher Gehirnaussetzer]

Lange Ping-Zeiten sind natürlich recht unspezifisch, wir sollten erstmal probieren, dass Problem näher zu fassen. Sind alle Pakete verzögert, schließt das Probleme mit ARP oder NDP praktisch aus, weil die Auflösung nur für das erste Paket notwendig ist. Hohe Latenzen können ein Hinweis auf Routing-Probleme sein, sind allerdings kein Beweis. Du siehst ja die IP der Gegenseite auf dem Tunnelinterface: status: active inet y.y.y.y --> x.x.x.x netmask 0xffffffff Ist schon ein ping x.x.x.x direkt vom Router aus langsam? Wenn ja, bleibt das auch so, wenn pf mit pfctl -d vorübergehend deaktiviert wird?
 
Zuletzt bearbeitet:
Magst du villeicht noch 1,2 details schreiben zur Hardware:

Villeicht

-> Das Modell des ISP-Routers (Evtl: Gibt es irgendwas beim ISP das wenn man den gebucht hat fremde Router blockt?)
-> Grob CPU / Ram / Evtl. Nic (Wobei bei em0 ja eigentlich schon sonnenklar)
-> Davor ist vermutlich ein Glasfaser"modem"? (Dieser Medienconverter?)
-> Evtl. wenn nicht zu geheim auch den anbieter?

Du machst ja dieses vlan-gedöns - hast du das mal ohne probiert? AIs halluzinieren das irgendwie bei allen möglichen anbietern wo das garnicht nötig ist. (Bei mir bei Deutsche Glasfaser schreiben das auch einige, ist aber völliger Quatsch außer für einige voip oder tv sachen wenn man sowas braucht meine ich)

Oh PS: Neben Yamagis hinweisen, ist das problem auch bei ipv6?
 
Du koenntest auch ein Diagnosetool verwenden, wie z.B. mtr:

Code:
$ doas pkg_add mtr
$ mtr -4 --tcp --port 443 -brw bsdforen.de
$ mtr -6 --tcp --port 443 -brw bsdforen.de

Ich mag mtr, da es traceroute und ping vereint und meiner Meinung nach gut darstellt. Man kann das aber auch mit Bordmitteln wie traceroute und ping machen.

Du machst pppoe rein unter IPv4? Ist das so korrekt? Ich dachte immer, dass Glasfaser IPv6 verwendet. Evtl. ist hier auch schon der Flaschenhals.
 
Vielen Dank Euch für die Antworten. Ich werde erst heute Abend am Router sein, kann aber ein paar Fragen schon mal so beantworten:

  • Hardware: PC Engines APU 2C4 3xGigabitLAN, 4GB RAM, AMD GX-412TC CPU
  • ISP: T-Mobile Polen
  • ONT: Nokia XS-010X-R

VLAN 35 muss sein, weil der ISP es so verlangt (ohne VLAN 35 kein Verbindung)
IPv6 habe ich nicht konfiguriert - wenn ich es richtig in Erinnerung habe unterstützt der ISP das auch nicht
 
Ich denke da mal etwas drüber nach, so ad-hoc hab ich da keine idee.

Als kleiner Hinweis, solltest du gigabit gebucht haben wird die CPU vermutlich zu langsam sein die Leitung auszulasten, sie ist eindeutig zu langsam solltest du noch nennenswerten internen traffic dazu haben (z.B. mehrere interne vlans die sich austauschen, ggf. mit PF Rules dazwischen). (Ich hatte da mit einer ähnlichen CPU einige Benchmarks gemacht ende 2024)
Das sollte für dein aktuelles Problem aber komplett egal sein, sofern nicht während des pings viel traffic läuift :)
(Oh, kleiner edit: pppoe selbst braucht auch etwas dampf und ist AFAIK single-threaded, @Yamagi hatte da einige mehr infos zu, das hab ich aber nicht noch ontop gebenchmarkt da das meine Testumgebung nich hergegeben hat, macht es also evtl. noch schwieriger als ich vermute)

(Zu den ipv6: Nen versuch macht kluch solltest du das wollen, mein polnisch ist leider nicht vorhanden um das gut zu googeln)
 
Ich habe ner 1000er-Leitung, weil ich im Intranet auch nichts schnelleres als das liegen habe. Dass der Router damit evtl. schon überfordert sein kann, damit rechne ich schon, aber wie Du bereits sagst, wäre das ja ein anderes Problem. VLANs habe ich intern nicht, nur auf der Strecke zum ISP. Keine DMZ oder dergleichen - der Router macht also "nur" pf zwischen zwei Netzwerken. An IPv6 traue ich mich derzeit mangels Sachverständnis nicht ran. Dass auch IPv4 sich als ein Bottleneck herausstellen kann, nehme ich in Kauf.
 
Sitze nun vor dem Gerät. Habe hier so etwas:
router# ping x.x.x.x
PING x.x.x.x (x.x.x.x): 56 data bytes
64 bytes from x.x.x.x: icmp_seq=0 ttl=64 time=61849.588 ms
64 bytes from x.x.x.x: icmp_seq=1 ttl=64 time=61163.285 ms
64 bytes from x.x.x.x: icmp_seq=2 ttl=64 time=60315.340 ms

Beim Ping kommt erstmal lange Zeit nichts, und dann eine Welle Antworten. Die Antwortzeiten gehen bis zu 12 Sekunden hoch.

Zur Erinnerung:
pppoe0: flags=8851<UP,POINTOPOINT,RUNNING,SIMPLEX,MULTICAST> mtu 1492
index 6 priority 0 llprio 3
dev: vlan35
state: session
sid: 0x1 PADI retries: 3 PADR retries: 0 time: 00:24:51
sppp: phase network authproto pap authname "redacted"
dns: z.z.z.z z.z.z.z
groups: pppoe egress
status: active inet y.y.y.y --> x.x.x.x netmask 0xffffffff
 
router# mtr -4 --tcp --port 443 -brw bsdforen.de
Start: 2025-12-27T18:46:38+0000
HOST: router.local Loss% Snt Last Avg Best Wrst StDev
1.|-- ??? 100.0 10 0.0 0.0 0.0 0.0 0.0
2.|-- 157.25.255.163 0.0% 10 846.7 1138. 846.7 1499. 201.1
3.|-- 157.25.255.239 0.0% 10 1229. 1087. 819.4 1416. 180.5
4.|-- de-cix-fra.ediscom.net (80.81.194.222) 0.0% 10 1137. 1036. 747.9 1324. 190.7
5.|-- 118.39.204.212.ediscom.de (212.204.39.118) 0.0% 10 1069. 1061. 658.5 1409. 199.1
6.|-- 117.39.204.212.ediscom.de (212.204.39.117) 0.0% 10 1023. 1150. 564.0 1401. 249.7
7.|-- 212.204.40.150 0.0% 10 910.7 1106. 567.9 1364. 246.4
8.|-- 212.204.41.13 0.0% 10 813.7 1100. 813.7 1504. 227.1
9.|-- www-rdr.bytecamp.net (212.204.60.2) 0.0% 10 787.3 1038. 787.3 1392. 196.0
 
Ich habs mal zur besseren Lesbarkeit mit Code-Tags versehen:

Code:
router# mtr -4 --tcp --port 443 -brw bsdforen.de
Start: 2025-12-27T18:46:38+0000
HOST: router.local                               Loss%   Snt   Last   Avg  Best  Wrst StDev
 1.|-- ???                                        100.0    10    0.0   0.0   0.0   0.0   0.0
 2.|-- 157.25.255.163                              0.0%    10  846.7 1138. 846.7 1499. 201.1
 3.|-- 157.25.255.239                              0.0%    10  1229. 1087. 819.4 1416. 180.5
 4.|-- de-cix-fra.ediscom.net (80.81.194.222)      0.0%    10  1137. 1036. 747.9 1324. 190.7
 5.|-- 118.39.204.212.ediscom.de (212.204.39.118)  0.0%    10  1069. 1061. 658.5 1409. 199.1
 6.|-- 117.39.204.212.ediscom.de (212.204.39.117)  0.0%    10  1023. 1150. 564.0 1401. 249.7
 7.|-- 212.204.40.150                              0.0%    10  910.7 1106. 567.9 1364. 246.4
 8.|-- 212.204.41.13                               0.0%    10  813.7 1100. 813.7 1504. 227.1
 9.|-- www-rdr.bytecamp.net (212.204.60.2)         0.0%    10  787.3 1038. 787.3 1392. 196.0
 
Das liebe anonymisieren.. kannst Du den ping auch mal Richtung www-rdr machen?
So wie in x.x.x.x beschrieben ist "nur" der direkte PtP langsam - aber forum/bytecamp schnell.
 
Vorweg: Ich logge mich per serieller Schnittstelle auf meinem Router ein, sprich ich kann am Netzwerk rumkonfigurieren, ohne mich abzuklemmen. Das war speziell jetzt von Bedeutung, weil (Router alleine ohne Verbindung ins LAN):

Code:
                             My traceroute  [v0.96]
router.local (y.y.y.y) -> 212.204.60.2 (212.204.62025-12-28T09:03:04+0000
Keys:  Help   Display mode   Restart statistics   Order of fields   quit
                                       Packets               Pings
 Host                                Loss%   Snt   Last   Avg  Best  Wrst StDev
 1. x.x.x.x                          14.0%    50   23.2 4145.  20.5 9899. 3982.
 2. 157.25.255.163                   14.0%    50   25.6 4138.  22.3 9904. 3977.
 3. 157.25.255.239                   14.0%    50   21.5 4126.  20.9 9882. 3973.
 4. de-cix-fra.ediscom.net           14.0%    50   43.8 4137.  43.1 9912. 3964.
 5. 118.39.204.212.ediscom.de        14.0%    50   48.9 4150.  48.5 9905. 3981.
 6. 117.39.204.212.ediscom.de        16.0%    50   48.9 4022.  47.2 9915. 3948.
 7. 212.204.40.150                   16.0%    50   48.9 4017.  48.6 9887. 3946.
 8. 212.204.41.13                    16.3%    50   49.2 4106.  48.9 9921. 3940.
 9. 212.204.41.214                   16.3%    49   49.1 4106.  49.0 9920. 3936.
10. 212.204.41.213                   16.3%    49   51.4 4107.  49.8 9961. 3930.
11. 212.204.41.214                   16.3%    49   52.7 4094.  50.3 9991. 3923.
12. 212.204.41.213                   16.3%    49   53.0 4089.  49.4 9985. 3923.
13. 212.204.41.214                   16.3%    49   52.3 4090.  49.0 9954. 3930.
14. 212.204.41.213                   16.3%    49   52.7 4084.  50.9 9940. 3932.
15. 212.204.41.214                   16.3%    49   51.8 4088.  49.3 9967. 3941.
16. 212.204.41.213                   16.3%    49   52.3 4081.  50.2 9974. 3943.
17. 212.204.41.214                   16.3%    49   51.7 4083.  49.2 9943. 3956.
18. 212.204.41.213                   16.3%    49   52.2 4078.  50.4 9914. 3954.

Schließe ich den Router ans LAN an, bekomme ich die langen Ping-Zeiten. Vorher mit Kabel-Internet 50MBit lief alles ohne Probleme.
 
APU-PC hatte ich auch, der war schon ziemlich geil fuer DSL.
Mit Gigabit FTTH habe ich aber leider gemerkt, dass der zu schwachbruestig wurde.

Daher bin ich auf einen BananaPi und (schweren Herzens) Linux gewechselt.

Mit OpenBSD hat es leider nicht out-of-the Box funktioniert.


 
Schließe ich den Router ans LAN an, bekomme ich die langen Ping-Zeiten. Vorher mit Kabel-Internet 50MBit lief alles ohne Probleme.

War das auch mit PPPOE?

Magst du evtl. ein bisschen mehr von der pf.conf posten? Insb. was du so im bereich icmp blockst / Frei gibst?
Hattest du die tipps von @Yamagi mal ohne pf probiert?

"match out on pppoe0 scrub (max-mss 1452)" <- Villeicht das mal testweise auch etwas niedriger setzen.

Verstehe ich das richtig das nicht jedes ziel langsam ist?

Ist das Problem nur bei Ping oder auch wenn du auf dem Router mal einen schnellen Download startest?
 
Das klingt nach lokalem Routing. Probiere erstmal ohne pf, aber mit verbundenem LAN.
Okay, das hab ich tatsächlich überlesen - wenn der Router nur mit der ftth box verbunden ist ist ping alles tutti und sobald du das lan anschließt sind die probleme auf einmal da, selbst wenn du vom router selbst pingst?
 
Beim vorherigen ISP hatte ich ein Cisco-Kabelmodel - also alles ohne PPPoE auf dem OpenBSD Router. Bei FTTH ist das PPPoE dazugekommen.

Szenario 1:
Router komplett vom Intranet getrennt. curl auf 100MB Datei -> 128k Downloadrate, ping auf 8.8.8.8 ca 35 ms, pf an / pf aus, "match in all scrub (random-id max-mss 1440)" oder "match in all scrub (random-id max-mss 1200)" - macht alles keinen Unterschied.

Szenario 2:
Verbinde den Router mit dem Intranet, verbinde mich mit dem Smartphone ins WLAN -> Pingzeiten gehen quasi sofort auf die hohen Zeiten hoch. Stecke den Intranet-Stecker aus dem Router -> Pingzeiten erholen sich.

Das einzige was hier am Aufbau neu ist, ist PPPoE. Systembedingte Bandbreiten-Performance hin- oder her, ich würde hier einfach nur eine langsamere Internet-Bandbreite erwarten, keinen Paketstau.
 
LAN-Kabel dran und pf aus scheint zu gehen (kurze Ping-Zeiten).

Meine pf.conf:

Code:
lan_if="em1"
dmz_if="em2"
wan_if="pppoe0"
log_dbg=""

dns_port="53"
icmp4_types="{ echoreq, unreach }"

set block-policy drop
set skip on lo0

match in all scrub (random-id max-mss 1440)


table <broken4> persist {
  224.0.0.22
  0.0.0.0/8
  10.0.0.0/8
  127.0.0.0/8
  169.254.0.0/16
  172.16.0.0/12
  192.168.0.0/16
  192.0.2.0/24
  198.51.100.0/24
  203.0.113.0/24
  240.0.0.0/4
  255.255.255.255/32
}

block in  quick inet6 all
block out quick inet6 all

match out $log_dbg on $wan_if inet from $lan_if:network to any nat-to ($wan_if)

antispoof quick for (egress)
block in quick on $wan_if inet from { <broken4> urpf-failed no-route } to any

block in all

block out quick inet from any to { <broken4> no-route }

pass $log_dbg inet proto icmp all icmp-type $icmp4_types

rdr on $lan_if inet proto { tcp udp } from $lan_if:network to any port $dns_port -> 127.0.0.1
rdr on $dmz_if inet proto { tcp udp } from $dmz_if:network to any port $dns_port -> 127.0.0.1

pass in $log_dbg on $lan_if inet proto { tcp udp } from $lan_if:network to 127.0.0.1 port $dns_port keep state
pass in $log_dbg on $dmz_if inet proto { tcp udp } from $dmz_if:network to 127.0.0.1 port $dns_port keep state

block in  quick on $dmz_if from $dmz_if:network to $lan_if:network
block out quick on $dmz_if from $dmz_if:network to $lan_if:network

block in  quick on $dmz_if from $dmz_if:network to any
block out quick on $dmz_if from $dmz_if:network to any

pass in $log_dbg on $lan_if inet from $lan_if:network to $dmz_if:network keep state

pass in $log_dbg on $lan_if inet from $lan_if:network to any keep state

pass out $log_dbg on $wan_if inet keep state

block return out log proto { tcp udp } user _pbuild

Edit: falsche pf.conf kopiert
 
hm ,
seltsam fuer mich FTTH in Kombination mit PPPoE.

was sagt den
netstat -s | grep -i frag
bzw.
netstat -s | grep -i err

holger
 
Das ist halb geraten, da ich OpenBSD in dem Bereich nicht wirklich kenne, aber müssten in der pf.conf nicht em0 und vlan35 gescipt (tolles Wort) werden?

Außerdem fällt mir noch auf, dass du hier em2 angibst:

Code:
router# cat /etc/hostname.pppoe0
inet 0.0.0.0 255.255.255.255 NONE mtu 1492 \
pppoedev em2 authproto pap \
authname 'redacted' authkey 'redacted' up
dest 0.0.0.1
#!/sbin/route add default -ifp pppoe0 0.0.0.1

Ist das wirklich richtig?

seltsam fuer mich FTTH in Kombination mit PPPoE.
Leider nicht unüblich :/ Willy Tel macht es z.B. auch, sogar mit 24h Zwangstrennung. Weil sie es können.
 
eigentlich sollte alls pppoedev das vlan angegeben werden.

in pf werden die $ Macros die in den regeln verwendet werden zu anfang definiert.

Holger
 
Hast du die Möglichkeit, das vlan35 von einem anderen Gerät davor setzen zu lassen, sodass du pppoe softwareseitig auf untagged konfigurierst? Evtl. kleiner Switch davor, den aber mit Bedacht dann umkonfigurieren, wenn es klappt?
Jedenfalls war das meine Lösung damals mit opnsense, als mein ISP auf vlan umstellte.

Vlan auf pppoe ließ sich nicht bewerkstelligen bzw. machte ärgste Probleme beim 24h-Kick.
 
hi

@mr44er pppoedev laeuft wunderbar auf einem vlan device .

hier mal meine conf
/var/unbound/db 13>cat /etc/hostname.pppoe0
!echo "add to rdomain 7"
rdomain 7
rtlabel netcologne
pppoedev vlan7
!echo "set startup ip"
inet 0.0.0.0 255.255.255.255 NONE \
authproto pap \
mtu 1492 \
authname 'nc-max.mustermann@netcologne.de' authkey 'FUBAR' up
dest 0.0.0.1
!echo "enable ipv6"
inet6 autoconf temporary
!/sbin/route -n -T 7 add default -ifp pppoe0 0.0.0.1
!/sbin/route -n -T 7 add -inet6 default -ifp pppoe0 fe80::%pppoe0

ohne jegliche Probleme , auch bezüglich der Zwangs Trennung .

Holger
 
@mark05 :

Router "nackt":

Code:
router# netstat -s | grep -i frag
        0 fragments received
        0 fragments dropped (duplicates or out of space)
        0 malformed fragments dropped
        0 fragments dropped after timeout
        0 output datagrams fragmented
        0 fragments created
        0 datagrams that can't be fragmented
        0 fragment floods
        0 fragments received
        0 fragments dropped (duplicates or out of space)
        0 fragments dropped after timeout
        0 fragments that exceeded limit
        0 output datagrams fragmented
        0 fragments created
        0 datagrams that can't be fragmented
router# netstat -s | grep -i err
        6370 calls to icmp_error
        0 errors not generated because old message was icmp
        0 errors not generated because of rate limitation
                0 send failed due to mbuf memory error
                0 send failed due to mbuf memory error
                0 send error
        0 errors
                0 send failed due to mbuf memory error
                0 send error
        0 calls to icmp6_error
        0 errors not generated because old message was icmp6 or so
        0 errors not generated because of rate limitation
        Histogram of error messages to be generated:
                0 erroneous header field

Router mit angeschlossenem Intranet:
Code:
router# netstat -s | grep -i frag 
        0 fragments received
        0 fragments dropped (duplicates or out of space)
        0 malformed fragments dropped
        0 fragments dropped after timeout
        0 output datagrams fragmented
        0 fragments created
        0 datagrams that can't be fragmented
        0 fragment floods
        0 fragments received
        0 fragments dropped (duplicates or out of space)
        0 fragments dropped after timeout
        0 fragments that exceeded limit
        0 output datagrams fragmented
        0 fragments created
        0 datagrams that can't be fragmented
router# netstat -s | grep -i err  
        6592 calls to icmp_error
        0 errors not generated because old message was icmp
        0 errors not generated because of rate limitation
                0 send failed due to mbuf memory error
                0 send failed due to mbuf memory error
                0 send error
        0 errors
                0 send failed due to mbuf memory error
                0 send error
        0 calls to icmp6_error
        0 errors not generated because old message was icmp6 or so
        0 errors not generated because of rate limitation
        Histogram of error messages to be generated:
                0 erroneous header field


Und weil die Frage aufkam, /etc/hostname.pppoe0 noch einmal:

Code:
router# cat /etc/hostname.pppoe0                                               
inet 0.0.0.0 255.255.255.255 NONE mtu 1492 \
        pppoedev vlan35 authproto pap \
        authname 'redac' authkey 'redac' up
dest 0.0.0.1
!/sbin/route add default -ifp pppoe0 0.0.0.1
 
Zurück
Oben