Multiple Network Interfaces

Giorgos Keramidas keramida at ceid.upatras.gr
Sun Nov 28 03:19:41 EET 2004


On 2004-11-28 00:34, Dimitris Moraitis <dim_m at users.sourceforge.net> wrote:
> Καλησπέρα,
> 
> έχω ένα μηχάνημα που έχει δύο network interfaces (eth0 & eth1) που 
> φυσικά αντιστοιχούν σε δύο διαφορετικές κάρτες ethernet οι οποίες όμως 
> συνδέονται στο ίδιο hub. Αυτό που θέλω είναι να τους αντιστοιχήσω 
> διαφορετικές IP διευθύνσεις μέσα στο ίδιο υποδίκτυο και για κάποιες 
> υπηρεσίες να χρησιμοποιείται το eth0 interface, ενώ για κάποιες άλλες το 
> eth1.
> 
> To ifconfig μου λέει ότι το configuration που έχω κάνει είναι τζάμι και 
> ότι η eth0 όντως αντιστοιχεί στην 192.168.0.33, ενώ η eth1 στην 
> 192.168.0.34 (και οι δύο χρησιμοποιούν για broadcast την 192.168.0.255).
> 
> Παρόλα αυτά, παρατηρώντας την δικτυακή κίνηση των interfaces (με την 
> βοήθεια του ksysguardd), προκύπτει ότι, παρότι και οι δύο ip's παίζουν 
> σωστά, το eth1 μονίμως ξύνεται και όλη η κίνηση περνάει από το eth0. Με 
> όποια ip και να επικοινωνήσω, το traffic καταγράφεται ολόκληρο στο eth0 
> και ισούται με το συνολικό άθροισμα της κίνησης στις δύο διευθύνσεις.

Το routing table σου τι λέει γι αυτό;

Προφανώς[1], το kernel βρίσκει στο routing table την εγγραφή για το
πρώτο IP address, βλέπει ότι έχει το ίδιο ακριβώς netmask με το δεύτερο
οπότε γράφει το δεύτερο μόνιμα στα παλιά του τα παπούτσια.  Αν δεν κάνω
λάθος, μόνο αν κάποια εφαρμογή κάνει bind() explicitly στη διεύθυνση του
δεύτερου interface θα μπορέσει να φύγει πακέτο από αυτήν κι αυτό μόνο αν
η δεύτερη διεύθυνση είναι host route ή έστω με πιο μικρό subnet mask από
το πρώτο interface.

Εκτός κι αν χρησιμοποιήσεις multipath extensions, οπότε αλλάζει το
πράγμα αρκετά.

[1] Τώρα το πόσο προφανές είναι αυτό είναι άλλη ιστορία.  Για το FreeBSD
ξέρω να σου πω πώς γίνεται routing.  Για Linux απλά μαντεύω.

> Μπορεί κανείς να φανταστεί τι ακριβώς παίζεται?

Ναι...

Δείξε μου την έξοδο της `netstat -rn' και της `ifconfig -a' για να σου
πω ακριβώς τι παίζει, με συγκεκριμένα νούμερα.

> Πως θα μπορέσω να πείσω το linuxάκι, να καταδεχτεί να χρησιμοποιήσει
> και την δεύτερη κάρτα δικτύου?

Βάζοντάς τη σε άλλο subnet.




More information about the Linux-greek-users mailing list