Προβληματάκι routing σε σύστημα με δύο ip addresses
nk
eos at eos.gr
Fri May 4 11:44:09 EEST 2012
On 04/05/12 11:01, Potamianos Gregory wrote:
> 2012/5/4 nk<eos at eos.gr>:
>> κανει διαφορα μονο ως προς τη src addr που βρισκει ο πυρηνας οταν κανει add
>> τη route με βαση το iface (route add something dev iface)
>> πραγμα που στη συγκεκριμενη περιπτωση ειναι το ζητουμενο.
>>
>
> Το iface και της eth0 και της eth0:1 είναι το eth0, το eth0:1 είναι
> απλά ένα alias όχι άλλο iface. Αν τρέξεις ip r add default via
> xxx.xxx.xxx.xxx dev eth0:1 θα δεις πως στο show το dev είναι eth0 και
> δεν υπάρχει src option.
αν θελεις κανε μια προσπαθεια να εστιασεις στο προβλημα που τεθηκε.
1. ο χρηστης εκχωρει μια δ/ση σε ενα iface
2. ο πυρηνας καταχωρει αμεσως στο routing table
localnet dev iface (υποχρεωτικα με src την address, τα πακετα δε γινεται
να μην εχουν src ασχετα αν στο δειχνει ή οχι η output του όποιου tool σου)
3. ο χρηστης προσθετει μια δ/ση στο iface (που στην περιπτωση μας ανηκει
στο ιδιο δικτυο με την πρωτη)
4. o πυρηνας _δεν_ αλλαζει (change/replace) τη rοute καταχωρηση για το
localnet
5. αργοτερα ο χρηστης καταχωρει default route απο το συγκεκριμενο iface.
ο πυρηνας λοιπον εχει μια οδηγια να δρομολογησει πακετα απ το
συγκεκριμενο iface το οποιο στην περιπτωση μας διαθετει δυο ips στο ιδιο
subnet και αρα δυο εναλλακτικες! προσβασεις προς την πυλη του.
καποιος αλγοριθμος λοιπον καλειται να επιλεξει ποια απ τις 2 διαθεσιμες
δ/σεις θα ειναι η src.
στο συγκεκριμενο παραδειγμα _φαινεται_ οτι για καποιο λογο (καλως ή
κακως) ο αλγοριθμος διαλεγει ως src την τελευταια καταχωρημενη.
αυτο παραγει μια ιδιοτυπη κατασταση οπου του route table δρομολογει προς
το localnet με src addr την πρωτη ipaddr και προς ολον τον αλλο κοσμο με
src addr την δευτερη.
αυτο, αν δεν ειναι επιθυμητο (οπως στην περιπτωση μας) αντιμετωπιζεται
είτε με απευθειας παρεμβαση στο routing table (οπως προτεινα την πρωτη
φορα), είτε αλλαζοντας label στην επιπροσθετη ip (ονομαζοντας ενα subif
με αλλα λογια) ωστε στο βημα 5 να μη χρειαστει να επιλεγεί src addr
εχοντας μονο μια ip διαθεσιμη (την πρωτη) στο συγκεκριμενο label
ουτως ωστε να εχουμε την ιδια src και προς το localnet και προς τον
κοσμο χωρις αλλη παρεμβαση (η διορθωμενη δευτερη προταση)
ευχαριστω
More information about the Linux-greek-users
mailing list