PDA

View Full Version : Πρόβλημα - 50% packet loss σε συγκεκριμένη IP?



Acinonyx
09/09/2004, 16:32
Η διάταξη των if στον router:

eth0 = Ethernet που συνδέεται το AP
eth1 = Ethernet που συνδέεται το τοπικό δίκτυο
wlan0 = ασύρματο if προς Alex που με βγάζει στο AWMN
wlan1 = ασύρματο if προς Billgout
wlan2 = ασύρματο if προς deysta

Το πρόβλημα είναι ότι όσοι κάνουν ping στην IP του eth0 (10.2.16.1) λαμβάνουν τα μισά πακέτα σαν reply. Εξαιρούνται αυτοί που κάνουν ping από μηχανήματα που συνδέονται απευθείας πάνω σε ένα από τα if του router μου όπως το pc μου ή ο router του Billgout ή ο deysta.

Παρόλαυτα ΟΛΟΙ μπορούν να κάνουν κανονικά ping σε όλες τις υπόλοιπες IP που βρίσκονται στο subnet του eth0 (AP, clients κλπ). Το πρόβλημα είναι μόνο στην συγκεκριμένη IP 10.2.16.1 που αντιπροσωπεύει την eth0.

Κάνοντας "tcpdump -i wlan0 host 10.2.16.1 and icmp" παρατήρησα ότι δεν στέλνω ping replies σε όλα τα πακέτα διότι απλά δεν τα λαμβάνω όλα. Από όσα μου στέλνουν λαμβάνω ακριβώς τα μισά. Υπενθυμίζω ότι με την παραπάνω εντολη φέρνω την κάρτα που με βγάζει στο AWMN (μέσω Alex) σε promiscuous mode οπότε ότι πακέτο περνάει το αρπάζω.



Ο Mernion μου έστειλε 4 πακέτα στο 10.2.16.1.
Έλαβα μόνο 2 και απάντησα και στα 2.

16:23:18.729329 IP 10.26.122.131 > 10.2.16.1: icmp 40: echo request seq 4096
16:23:18.729643 IP 10.2.16.1 > 10.26.122.131: icmp 40: echo reply seq 4096
16:23:25.318488 IP 10.26.122.131 > 10.2.16.1: icmp 40: echo request seq 4608
16:23:25.318559 IP 10.2.16.1 > 10.26.122.131: icmp 40: echo reply seq 4608



Ο Mernion μου έστειλε 4 πακέτα στο 10.2.16.2.
Τα έλαβα όλα και απάντησα σε όλα παρόλο που είναι στο ιδιο subnet με το 10.2.16.1

16:24:32.501979 IP 10.26.122.131 > 10.2.16.2: icmp 40: echo request seq 5120
16:24:32.503427 IP 10.2.16.2 > 10.26.122.131: icmp 40: echo reply seq 5120
16:24:33.650147 IP 10.26.122.131 > 10.2.16.2: icmp 40: echo request seq 5376
16:24:33.650724 IP 10.2.16.2 > 10.26.122.131: icmp 40: echo reply seq 5376
16:24:34.262129 IP 10.26.122.131 > 10.2.16.2: icmp 40: echo request seq 5632
16:24:34.262707 IP 10.2.16.2 > 10.26.122.131: icmp 40: echo reply seq 5632
16:24:35.948433 IP 10.26.122.131 > 10.2.16.2: icmp 40: echo request seq 5888
16:24:35.948997 IP 10.2.16.2 > 10.26.122.131: icmp 40: echo reply seq 5888

Που πηγαίνουν τα μισά από τα πακέτα που μου στέλνουν στο 10.2.16.1; Σε μένα πάντως δεν έρχονται.. Καμιά ιδέα;

mojiro
09/09/2004, 17:58
οταν κανεις ping σε linux εκτος απο τον αριθμο Packets σου λεει
και ποσα bytes(ή bits) εχει λαβει/στειλει το if. ακομα και DROP
να ειναι το INPUT/OUTPUT αυτος ο αριθμος θα αλλαζει.

τι netmask εχει το καθε if ?

δοκιμασε να στειλεις τα πακετα ενα ενα (διαδοχικα ping IP -c 1)

Acinonyx
09/09/2004, 19:07
Τα παραπάνω paste ήταν από το tcpdump. Είναι τα πακέτα που περνάν στο router από το if που με βγάζει στο AWM

mojiro
09/09/2004, 19:30
πολλα απο δυκτια δεν ξερω.

οταν "επαιζα" με τις netmask σε δυκτιο 2 pc (το 1 linux ftp server)
και ειχα 255.255.255.248 (λογω λιγων pc) ειχα μεγαλο προβλημα
στην ταχυτητα download παρολο που ηταν συνδεμενα με cross-utp.

το download σερνοταν στην κυριολεξια.
οταν το αλλαξα σε 255.255.255.192 τα πραγματα ηταν πολύ καλυτερα.

ysam
09/09/2004, 21:41
@mojiro

Μου φαίνεται λίγου κουφό αυτό που λες. Δεν μου έχει συμβεί ποτέ και δεν βλέπω κανέναν λόγο να φταίει το Subnet mask.

Βασίλη μίλησες με alexandros?

-Γιάννης

mxou
09/09/2004, 21:58
Κόψε το firewall σου για λίγο και πες να σε pingάρουν στο 21 σου, αυτό που έχει το πρόβλημα. Αν όλα καλά τότε ξέρεις ποιο script να κατηγορήσεις.

Acinonyx
09/09/2004, 22:08
Ο alexandros πρέπει να είναι εκτός Αθηνών. :(

mxou Δεν έχω firewall. :)

Painter
09/09/2004, 23:10
Σε παρόμοια περίπτωση έχω δεί hardware πρόβλημα.
Δοκίμασε να κάνεις "σκάντζα" τον ορισμό των eth0 με eth1 για να δείς άν το πρόβλημα υπάρχει και στην άλλη κάρτα.
Μπορείς ακόμα να bootάρεις με ένα live cd και να δοκιμάσεις άν και έτσι έχεις πρόβλημα.
Αν πάλι έχεις περίσευμα άλλη κάρτα δικτύου ίδιου τύπου με την eth0 βάλτην απευθείας για να δείς και αυτή την περίπτωση.

Edit: Πρέπει η κάρτα να πάσχει απο κώφωση, οι clients του ΑΡ σου ακούνε μόνοι τους τα boadcast μυνήματα των άλλων clients του ΑΡ σου και απαντάνε μόνοι τους χωρίς να μεσολαβεί ο ρούτερ σου.
Σε αυτό το σενάριο θα πρέπει να έχεις χαμηλή απόδοση σε ότι περνάει απο τους clients σου πρός την eth0 και οποιονδήποτε άλλο προορισμό εκτός απο άλλο client.
Οι clients σου άν κάνουν ping σε IP άλλου interface δικού σου ή άλλου δικτύου χάνουν πακέτα?

mxou
10/09/2004, 00:54
Ο alexandros πρέπει να είναι εκτός Αθηνών. :(

mxou Δεν έχω firewall. :)

Διαισθητικά πιστεύω πως κάτι δεν πάει καλά με το hardware/driver της κάρτας. Ανάλογα προβλήματα είχα κάποτε σε μία πλακέτα όπου με PCI Write Merge κουφαινόταν εντελώς μία 3c3905 (και βρήκα το λόγο και θαύμασα τα .. μεγαλεία της 3com). Το subnet mask σου, όπως λέει και ο ysam, δεν έχει σημασία καμία. Αν είναι PCI η κάρτα, δοκίμασε την σε άλλο slot μήπως κι εκεί που την έχεις δεν υποστηρίζει η μητρική σου busmastering.

Καλό θα ήταν, αν έχεις, να δοκιμάσεις με μία άλλη κάρτα, άσχετη, σε άλλο slot και να δεις αν στο κάνει. Θέλω να πιστεύω ότι μάλλον όχι.

ysam
10/09/2004, 00:58
Παιδιά μάλλον δεν το έχετε πιάσει καλά το θέμα..

Το Traffic προς άλλες ips πάει κανονικά.. Δλδ αν Pingαρεις την .2 τοτε τα πακέτα περνάνε όλα κανονικά.. ¨οπως επίσης αν Pingάρεις και την IP του interface (wireless) πάλι όλα καλά...

Νομίζω ότι οταν έρθει ο alexandros θα μας λυθεί η απορία γιατί μυρίζει κάτι από εκεί.

-Γιάννης

mxou
10/09/2004, 01:13
Όπως το να έχει 2 ανταγωνιστικά routes ίδιας μετρικής προς τον acinonyx, και το ένα να είναι τυφλό; Έτσι θα μπορούσε να εξηγηθεί το 50% packet loss. Παίζει κι αυτό.

Τσπα, καλή τύχη. Έχω να δω γιατί μου κολλάει μία Tulip από τη στιγμή που θα χάσει για λίγο το καλώδιο... καθένας με τον πόνο του :)

ysam
10/09/2004, 01:14
Ακριβός αυτό!!!

-Γιάννης

Acinonyx
11/09/2004, 17:54
Έχω δοκιμάσει να αλλάξω την eth0 με την eth1. Επίσης έχω αλλάξει την κάρτες.. Έβαλα άλλη με ίδιο chipset, έβαλα άλλη με άλλο chipset, την έβγαλα και τελείως και έδωσα την IP σε ένα ασύρματο if. Τα ίδια... 50% packet loss. Επίσης δοκίμασα να μειώσω το metric στο ospf σε 1 για το συγκεκριμένο if. Πάλι τα ίδια... :(

Mick Flemm
11/09/2004, 18:08
Μήπως το ριμάδι έχει κάποιου είδους flood protection και κάνει limit τα pings ? Ποιά συσκευή έχεις για AP ?

BTW mxou βγάλε τον tulip και βάλε de4x5

Acinonyx
11/09/2004, 18:13
Μα και χωρις το AP το ίδιο γίνεται. Ακόμη και χωρίς την ethernet γίνεται! ΕΛΕΟΣ! :)

Το κάνει σε όλα τα πακέτα. Ακόμη και ο dns δε δουλεύει σωστά για αυτό το λόγο.

Είμαι σίγουρος ότι είναι routing πρόβλημα και υπάρχει ένας τρόπος να το ελεγξω αλλά πρέπει να γυρίζω κεραία...

Mick Flemm
11/09/2004, 18:16
A ok sorry, λάθος κατάλαβα μάλλον είναι πρόβλημμα routing τότε...

paravoid
11/09/2004, 19:59
Σίγουρα θέμα routing είναι. Ο προηγούμενος από σένα router έχει 2 ίσα routes για σένα, κάνει load balancing αλλά το ένα δεν φτάνει ποτέ σε σένα.

mindfox
13/09/2004, 08:03
Παρόλαυτα ΟΛΟΙ μπορούν να κάνουν κανονικά ping σε όλες τις υπόλοιπες IP που βρίσκονται στο subnet του eth0 (AP, clients κλπ). Το πρόβλημα είναι μόνο στην συγκεκριμένη IP 10.2.16.1 που αντιπροσωπεύει την eth0.


Είσαστε σίγουροι ότι είναι θέμα routing?

Και όλες οι υπόλοιπες IPs στο ίδιο subnet παίζουν κανονικά;

Χλωμό το βλέπω για θέμα routing (τουλάχιστον αμιγώς)

Acinonyx, τι εννοείς όταν λες ότι γίνεται ακόμα και χωρίς την ethernet;

ysam
13/09/2004, 09:54
@mindfox

Τι σε κάνει να νομίζεις ότι είναι το 10.2.16.0/χχ το δίκτυο που έχει πρόβλημα? Εδώ ο άνθρωπος λέει ότι χάνει πακέτα στο wireless i/f και όταν κάνεις ping στο 10.2.16.1 ουσιαστικά το wireless απαντάει.

Εγώ λέω ότι το subnet που ενδεχομένος έχει το πρόβλημα είναι αυτό του wireless και όχι της Ethernet.

Μπορεί να μην είναι θέμα routing αλλά το πρόβλημα σίγουρα είναι εκεί.

-Γιάννης

mindfox
13/09/2004, 19:40
@ ysam

Μα, δε λέω ότι είναι πρόβλημα του δικτύου 10.2.16.0 με το πρόβλημα.

Απλώς έκανα τη διαπίστωση ότι το πρόβλημα υπάρχει όταν κάποιος κάνει ping από soure που βρίσκεται πάνω από ένα hop από τον εν λόγω router και ότι συμβάινει μόνο στην IP του router, όχι όλου του subnet που διαχειρίζεται.

Χωρίς να είμαι αυθεντία, για να ήταν routing το πρόβλημα, θα έπρεπε να υπάρχουν 2 host routes (10.2.16.1/32) στο routing table με ανταγωνιστικό κόστος (πράγμα εξαιρετικά απίστευτο να συμβαίνει). Μπορεί κάποιος να το ελέγξει αν συμβαίνει κάτι τέτοιο;

Γίνεται να παίξει το tcpdump στους 2 απέναντι routers να δούμε τι γίνεται και από την απέναντι πλευρά; Τα στέλνει όλα τα ICMP packets ή όχι;

mindfox
13/09/2004, 19:42
Και όλες οι υπόλοιπες IPs στο ίδιο subnet παίζουν κανονικά;


Γιάννη (ysam), δεν είναι ερώτηση απορίας αλλά ρητορική.
Το λέω επειδή ο acinonyx είπε ότι οι υπόλοιπες IPs στο subnet απαντούν κανονικά σε όλα τα requests.

ysam
13/09/2004, 21:18
Ναι παίζουν,

και έτσι όπως τα λες είναι.. δλδ δυο host routes ktl..

αλλά αφού δεν παίζει ούτε καν στο wireless i/f δεν μας απασχολούν τα υπόλοιπα.

-Γιάννης

Acinonyx
14/09/2004, 17:01
Η άλλη πλευρά είναι hardware router cisco. Δεν γνωρίζω τι δυνατότητες έχει για να "βλέπει" τι περνάει από καθε if του αλλά απότι μου είπε ο alex όλα γίνονται.

Σε λίγη ώρα θα κόψω το link με Alex και θα γυρίσω την κεραία προσορινα σε άλλο κόμβο-router που θα με βγάλει αποκλειστικά στο AWMN για να δω και αν από εκεί χάνονται τα πακέτα. ;)

Σήμερα θα ξεκαθαρίσει τουλάχιστον σίγουρα αν φταίει κάτι στο router μου ή στο router του Αλέξανδρου.

mindfox
14/09/2004, 17:32
Για να παρατηρήσεις το traffic που περνάει από το Interface του router, μπορείς να ενεργοποιήσεις το netflow που σου επιτρέπει να βλέπεις τι traffic περνάει.
Επίσης μπορείς να κάνεις debug την ICMP κίνηση, καθώς και άλλοι τρόποι.
Αν μου πεις το μοντέλο του router καθώς και τη μνήμη που έχει, θα σου πω και την κίνηση που πρέπει να κάνεις (για να μην τον σκίσουμε τον άμοιρο τον router).
Βλέπεις, αυτού του είδους το debugging απαιτεί αυστηρό καθορισμό κανόνων, αλλιώς θα δεις τη CPU του router στα κόκκινα (και φυσικό επακόλουθο το packet-loss, ακόμα και το restart!!!)

Acinonyx
14/09/2004, 18:29
Το πείραμα πέτυχε.

Βγαίνοντας απο άλλο κόμβο-router στο AWMN το packet loss εξαφανίστηκε! Ο router μου είναι αθώος... :)

Δείτε το tcpdump μετά την αλλαγή:


18:04:32.001906 IP ns3.spirosco.awmn > lynx.acinonyx.awmn: icmp 64: echo request seq 1
18:04:32.002090 IP lynx.acinonyx.awmn > ns3.spirosco.awmn: icmp 64: echo reply seq 1
18:04:33.009797 IP ns3.spirosco.awmn > lynx.acinonyx.awmn: icmp 64: echo request seq 2
18:04:33.009877 IP lynx.acinonyx.awmn > ns3.spirosco.awmn: icmp 64: echo reply seq 2
18:04:34.041611 IP ns3.spirosco.awmn > lynx.acinonyx.awmn: icmp 64: echo request seq 3
18:04:34.041696 IP lynx.acinonyx.awmn > ns3.spirosco.awmn: icmp 64: echo reply seq 3
18:04:35.029710 IP ns3.spirosco.awmn > lynx.acinonyx.awmn: icmp 64: echo request seq 4
18:04:35.029791 IP lynx.acinonyx.awmn > ns3.spirosco.awmn: icmp 64: echo reply seq 4
18:04:36.035800 IP ns3.spirosco.awmn > lynx.acinonyx.awmn: icmp 64: echo request seq 5
18:04:36.035971 IP lynx.acinonyx.awmn > ns3.spirosco.awmn: icmp 64: echo reply seq 5

Alexandreeeeeeeeeeee!!! :) :) :)

Alexandros
15/09/2004, 01:10
Βασίληηηηηηηη


μέχρι να βρεθεί τι πραγματικά φταίει και ο δικός μου είναι αθώοοοοοοςςςς.


Αλέξανδρος

mindfox
15/09/2004, 01:36
Βασίλη,

τα pings τα έκανες από τον κόμβο με τον οποίο συνδέθηκες ή από ένα hop πιο μακρυά;

Σύμφωνα με τα λεγόμενά σου, ούτε ο Αλέξανδρος είχε πρόβλημα, αλλά αυτοί που ήταν συνδεδεμένοι πάνω του.

Acinonyx
16/09/2004, 00:35
Το πρόβλημα το έχουν όσοι έχουν path για μένα που να περνάει μεσα από το router του Αλέξανδρου εκτός από τον ίδιο τον router του, ο οποίος συνδέεται απευθείας πάνω στον δικό μου.

Μου έκαναν ping 3 hop μακρυά. Συγκεκριμένα τα pings ήρθαν από το nagios. Ήρθαν όλα.