Η αποτυχία είναι συγκεκριμένη: το Docker δεν βρίσκει ένα αποδεκτό αυτόματο υποδίκτυο για ένα νέο δίκτυο γέφυρας. Δεν σημαίνει ότι το μηχάνημα ξέμεινε από διευθύνσεις, ούτε ότι το VPN είναι χαλασμένο. Δύο ερωτήματα καθορίζουν τη διάγνωση: ποια υποψήφια μπλοκ μπορεί να δει ο δαίμονας και ποια από αυτά αποκλείει ο εκχωρητής του σε αυτό το περιβάλλον. Περάστε τα με αυτή τη σειρά, γιατί το δεύτερο ερώτημα δεν έχει νόημα μέχρι να απαντηθεί το πρώτο.

Επιβεβαιώστε τι απέτυχε πριν αλλάξετε οτιδήποτε

Εκτελέστε τα παρακάτω βήματα από τον κεντρικό υπολογιστή που τρέχει τον δαίμονα. Ένα κέλυφος που μιλά σε απομακρυσμένο περιβάλλον περιγράφει άλλο μηχάνημα, και μόνο αυτό το λάθος μπορεί να σπαταλήσει μία ώρα.

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

Μετρήστε τις εκχωρήσεις που έχετε ήδη

Καταγράψτε τα δίκτυα και μετά επιθεωρήστε τα σημαντικά: docker network ls και στη συνέχεια docker network inspect NETWORK_NAME. Διαβάστε τα υποδίκτυα IPAM και τα κοντέινερ που συνδέονται με το καθένα. Αρκετά έργα Compose καταναλώνουν περισσότερα μπλοκ από όσα υποδηλώνουν τα πλήθη των κοντέινερ τους, γιατί κάθε έργο τείνει να δημιουργεί το δικό του προεπιλεγμένο δίκτυο. Ένα σταματημένο κοντέινερ δεν απελευθερώνει την εκχώρηση του δικτύου του.

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

Γράψτε το πλήθος. Είναι η βάση που σας λέει αν βοήθησε η επόμενη αλλαγή.

Συγκρίνετε την εικόνα του δαίμονα για τις διαδρομές

Ένα VPN μπορεί να επηρεάσει την επιλογή υποψηφίων, αλλά η συγκεκριμένη υλοποίηση αποφασίζει πώς. Στο Moby 28.2.2 σε Linux, το InferReservedNetworks συλλέγει διευθύνσεις διακομιστών ονομάτων και ορισμένες διαδρομές IPv4 on-link, και δεν δεσμεύει απλώς κάθε διαδρομή από κάθε πίνακα. Οι συλλεγόμενες διαδρομές ζεύξης αποκλείουν επίσης μια μη καθορισμένη διεύθυνση προορισμού, οπότε μία μόνο διαδρομή 0.0.0.0/1 δεν δεσμεύει όλες τις διευθύνσεις. Ένα άλλο ευρύ πρόθεμα on-link, όπως το 128.0.0.0/1, μπορεί να τέμνει τα γνωστά εύρη υποψηφίων 172 και 192.

Συγκρίνετε το ip -4 route show table all πριν και αφού συνδεθεί το VPN, στον κεντρικό υπολογιστή του δαίμονα. Η διαφορά είναι η απόδειξη, και η έκδοση είναι το εύρος του ισχυρισμού.

Μη γενικεύετε την ευρετική μιας έκδοσης σε όλες τις εκδόσεις. Έτσι μια απάντηση σε φόρουμ γίνεται αλλαγή πολιτικής.

Διαλέξτε τη μικρότερη διόρθωση που λειτουργεί

Αν ένα επιβεβαιωμένα αχρησιμοποίητο δίκτυο κρατά ένα μπλοκ που χρειάζεστε, σχεδιάστε τη στοχευμένη απόσυρσή του με τον ιδιοκτήτη αντί για ευρύ κλάδεμα. Για ένα νέο δίκτυο, ένα ρητά ελεγμένο αχρησιμοποίητο υποδίκτυο αποφεύγει εντελώς την εξάρτηση από την αυτόματη επιλογή. Αυτό το υποδίκτυο πρέπει ακόμη να αποφεύγει πραγματικούς προορισμούς Docker, LAN και απαιτούμενους VPN, γιατί ιδιωτικό δεν σημαίνει ασφαλές. Η δρομολόγηση ενός πραγματικού απομακρυσμένου προθέματος θα αντάλλασσε το σφάλμα εκχώρησης με σπασμένη πρόσβαση.

Η αλλαγή του default-address-pools είναι ευρύτερη πολιτική για τις μελλοντικές εκχωρήσεις. Διαλέξτε μια βάση χωρίς διενέξεις και ένα κατάλληλο εκχωρημένο μέγεθος, συγχωνεύστε το με τις υπάρχουσες ρυθμίσεις του δαίμονα και σχεδιάστε τον τεκμηριωμένο αντίκτυπο επανεκκίνησης. Τα υπάρχοντα δίκτυα δεν επαναριθμούνται σιωπηλά.

Μην απενεργοποιήσετε τις ωθήσεις διαδρομών της εταιρείας για να πετύχει η εκχώρηση. Ένα ρητό σχέδιο διευθύνσεων συνήθως λύνει το τοπικό πρόβλημα χωρίς να αποδυναμώνει μια υποχρεωτική πολιτική.

Αποδεχτείτε την εκχώρηση και τη δρομολόγηση χωριστά

Μετά την αλλαγή, επιθεωρήστε το υποδίκτυο που δημιούργησε πραγματικά το Docker και δοκιμάστε τις εξαρτήσεις VPN και τις τοπικές εξαρτήσεις της εφαρμογής. Η επιτυχής εκχώρηση και η σωστή δρομολόγηση κατά την εκτέλεση είναι δύο διαφορετικοί έλεγχοι αποδοχής, και η επιτυχία στον πρώτο δεν είναι απόδειξη για τον δεύτερο. Αν η εφαρμογή δεν φτάνει σε έναν πόρο πίσω από τη σήραγγα, έχετε πρόβλημα δρομολόγησης που το σφάλμα της δεξαμενής έκρυβε. Καταγράψτε και τα δύο αποτελέσματα στο δελτίο.

Κρατήστε τη διαφορά διαδρομών και το πλήθος της δεξαμενής μαζί με το αρχείο αλλαγής, γιατί η επόμενη ενημέρωση του πελάτη VPN μπορεί να αλλάξει το πρώτο χωρίς να αγγίξει το Docker.

Ο οδηγός είναι πλήρης όταν κάποιος άλλος μπορεί να επαναλάβει αυτούς τους δύο ελέγχους και να πάρει την ίδια απάντηση.

Σχετικά άρθρα