Καταιγίδα επανασύνδεσης στο υποκατάστημα: όρια εισδοχής του strongSwan
Ένα ολόκληρο γραφείο πίσω από ένα NAT μπορεί να υπερβεί τα όρια μισοανοιχτών IKE του strongSwan. Μετρήστε την κατάσταση εισδοχής χωριστά από τις εδραιωμένες συνεδρίες πριν αυξήσετε μια τιμή.
Δείτε ένα υποκατάστημα να επιστρέφει μετά από αστοχία ζεύξης και η πύλη βλέπει κάτι που δεν εμφανίζεται ποτέ σε μια συνηθισμένη ημέρα: δεκάδες φορητοί υπολογιστές φτάνουν ταυτόχρονα από μία δημόσια διεύθυνση. Ο καθένας είναι νόμιμη συσκευή και ο καθένας ξεκινά μια ανταλλαγή IKE που δεν έχει ολοκληρωθεί ακόμη. Το αν θα πετύχει αυτή η έκρηξη εξαρτάται από όρια που δεν έχουν καμία σχέση με το πόσους εργαζόμενους μπορεί να σηκώσει ο διακομιστής. Η έκρηξη είναι σύντομη και είναι ακριβώς το φορτίο για το οποίο χτίστηκε η διαδρομή εισδοχής.
Ακολουθήστε έναν φορητό υπολογιστή πίσω στο δίκτυο
Ο πελάτης στέλνει ένα αρχικό αίτημα και περιμένει, και μέχρι να ολοκληρωθεί η ανταλλαγή η πύλη κρατά κατάσταση εισδοχής για εκείνη την προσπάθεια. Άλλες συσκευές πίσω από την ίδια διεύθυνση φτάνουν ενώ η πρώτη ακόμη περιμένει και στοιχίζονται πίσω από ένα όριο που μετρά διευθύνσεις και όχι χρήστες. Απ' έξω, το σύμπτωμα είναι μια χούφτα χρήστες που συνδέονται και μια μεγαλύτερη ομάδα που λήγει ο χρόνος της.
Τίποτα σε αυτή την ακολουθία δεν είναι βλάβη. Είναι η διαδρομή εισδοχής που κάνει αυτό για το οποίο ρυθμίστηκε.
Μετρήστε τη μισοανοιχτή εργασία ως δικό της πόρο
Το strongSwan διαχωρίζει δύο πληθυσμούς: συσχετίσεις που έχουν εδραιωθεί πλήρως και απόπειρες που ακόμη συνδέονται ή περιμένουν επεξεργασία. Το κατώφλι αποκλεισμού εφαρμόζεται στις μισοανοιχτές συσχετίσεις που αποδίδονται σε μία διεύθυνση ομοτίμου, ενώ τα κατώφλια cookie εφαρμόζονται παγκόσμια και ανά διεύθυνση. Αυτοί οι μετρητές προστατεύουν τον δαίμονα από το να καταναλωθεί από μη πιστοποιημένη εργασία, που είναι ακριβώς το σχήμα μιας καταιγίδας επανασύνδεσης. Τίποτα από αυτή την κατάσταση δεν εμφανίζεται σε μια λίστα εδραιωμένων σηράγγων.
Το να τα διαβάζετε ως ανώτατο όριο στις συνεδρίες εργαζομένων είναι το λάθος που οδηγεί στο να ανεβάσετε τα πάντα μαζί. Ένας διακομιστής που σηκώνει τετρακόσιες εδραιωμένες σήραγγες δεν είναι αυτόματα σε θέση να απορροφήσει τετρακόσια ταυτόχρονα πρώτα πακέτα, επειδή τα δύο κόστη πέφτουν σε διαφορετικά σημεία.
Η καθυστέρηση πιστοποίησης καθορίζει πόσο καιρό κάθε απόπειρα μένει στη μέτρηση των μισοανοιχτών. Ένα backend που απαντά αργά μετατρέπει μια σύντομη έκρηξη σε μεγάλη ουρά ακόμη και όταν ο ρυθμός άφιξης είναι μέτριος.
swanctl --stats
swanctl --list-sas | grep -c ESTABLISHED
Διαβάστε τις ρυθμίσεις εισδοχής πριν τις αλλάξετε
Βρείτε τις τιμές που φόρτωσε πραγματικά ο δαίμονας που εκτελείται πριν σχηματίσετε γνώμη γι' αυτές. Η διαμόρφωση συχνά χωρίζεται ανάμεσα σε ένα κύριο αρχείο και έναν κατάλογο αποσπασμάτων ανά πρόσθετο, οπότε μια τιμή που ορίζετε σε ένα σημείο μπορεί να υπερισχυθεί αλλού. Η αναζήτηση παρακάτω δείχνει κάθε αρχείο που αναφέρει αυτές τις ρυθμίσεις.
Έπειτα αποφασίστε ποιος αριθμός είναι πολύ μικρός. Αν μία διεύθυνση αντιπροσωπεύει νόμιμα ένα ολόκληρο γραφείο, το κατώφλι αποκλεισμού ανά διεύθυνση είναι η τιμή που πρέπει να χωρέσει αυτή τη συγκέντρωση. Ένα παγκόσμιο κατώφλι cookie προστατεύει τον δαίμονα από μια ευρύτερη πλημμύρα και δεν πρέπει να χαλαρώνει επειδή μία τοποθεσία επανασυνδέεται. Συγκρίνετε αυτή την τιμή ανά διεύθυνση με τη μεγαλύτερη τοποθεσία που έχετε πραγματικά.
Αφήστε τον μηχανισμό cookie ενεργοποιημένο. Τα cookie κάνουν τον πελάτη να αποδείξει ότι μπορεί να λάβει στη διεύθυνση που ισχυρίζεται πριν ο δαίμονας ξοδέψει πραγματική εργασία στην ανταλλαγή, και η απενεργοποίησή τους δεν είναι ουδέτερη αναβάθμιση χωρητικότητας. Ανεβάστε ένα κατώφλι μόνο με μετρημένο ρυθμό άφιξης και δηλωμένο προϋπολογισμό πιστοποίησης πίσω του.
grep -rn -E 'block_threshold|cookie_threshold' /etc/strongswan.conf /etc/strongswan.d/
swanctl --stats | grep -i half
Σχεδιάστε για την επιστροφή, όχι μόνο για τη σταθερή κατάσταση
Ένας στόχος διαθεσιμότητας που μετρά μόνο εδραιωμένες συνεδρίες περιγράφει ένα ήσυχο απόγευμα, όχι μια ανάκαμψη. Ρωτήστε αντί γι' αυτό πώς επιστρέφει ο προβλεπόμενος πληθυσμός μετά από ένα κοινό συμβάν δικτύου και αν η διαδρομή εισδοχής μπορεί να απορροφήσει αυτό το σχήμα.
Το να μοιράζετε την επανασύνδεση σε ένα διαχειριζόμενο στόλο είναι συχνά φθηνότερο από το να μεγαλώνετε τα όρια, γιατί αφαιρεί την τεχνητή έκρηξη αντί να πληρώνετε γι' αυτήν μόνιμα. Παρακολουθείτε τη μισοανοιχτή κατάσταση και τα συμβάντα εισδοχής δίπλα στις επιτυχείς εδραιώσεις και αντιμετωπίστε έναν αυξανόμενο αριθμό μισοανοιχτών με επίπεδες επιτυχίες ως έγκαιρη προειδοποίηση και όχι ως περιέργεια.
Η αναφορά του προμηθευτή για αυτές τις ρυθμίσεις είναι η τεκμηρίωση του strongswan.conf, που ονομάζει τους μετρητές και την έκδοση που εισήγαγε το κατώφλι cookie ανά διεύθυνση. Διαβάστε την ενότητα για την εγκατεστημένη σας έκδοση και όχι την πιο πρόσφατη σελίδα, γιατί οι προεπιλογές κινούνται μεταξύ εκδόσεων.