28.7. Χρησιμοποιώντας το SLIP
Προηγ | Κεφάλαιο 28. PPP και SLIP | Επόμενο

## 28.7. Χρησιμοποιώντας το SLIP

Αρχική συνεισφορά του Satoshi Asami.
Με τη βοήθεια των Guy Helmer και Piero Serini.

### Προειδοποίηση:

Η ενότητα αυτή εφαρμόζεται και είναι έγκυρη μόνο σε συστήματα FreeBSD 7.X.

### 28.7.1. Ρυθμίζοντας ένα Πελάτη SLIP

Παρακάτω παρουσιάζουμε ένα τρόπο να ρυθμίσετε ένα μηχάνημα FreeBSD ως πελάτη SLIP σε ένα δίκτυο με στατικές διευθύνσεις. Για μηχανήματα τα οποία λαμβάνουν όνομα δυναμικά (η διεύθυνση τους αλλάζει κάθε φορά που συνδέονται), πιθανόν να χρειαστεί να κάνετε πιο πολύπλοκες ρυθμίσεις.

Αρχικά, θα πρέπει να καθορίσετε σε ποια σειριακή θύρα είναι συνδεμένο το modem σας. Αρκετοί χρήστες δημιουργούν ένα συμβολικό δεσμό π.χ. `/dev/modem`, το οποίο δείχνει στην πραγματική συσκευή `/dev/cuad`N``. Αυτό σας επιτρέπει να συνεχίσετε να χρησιμοποιείτε το ίδιο όνομα συσκευής, ακόμα και αν μετακινήσετε το modem σε διαφορετική θύρα. Είναι μάλλον άβολο να πρέπει να αλλάξετε πλήθος αρχείων στο `/etc` καθώς και τα αρχεία `.kermrc` σε όλο το σύστημα!

### Σημείωση:

Το `/dev/cuad0` είναι η `COM1`, το `/dev/cuad1` είναι η `COM2`, κ.ο.κ.

Βεβαιωθείτε ότι το αρχείο ρυθμίσεων του πυρήνα σας περιέχει τα παρακάτω:

device sl

Το παραπάνω περιλαμβάνεται στον πυρήνα `GENERIC`, και αν δεν το έχετε διαγράψει, δεν θα έχετε πρόβλημα.

#### 28.7.1.1. Ρυθμίσεις που θα Χρειαστεί να Κάνετε Μόνο μια Φορά

1. Προσθέστε το μηχάνημα σας, την πύλη (gateway) και τους διακομιστές ονομάτων (nameservers) στο αρχείο `/etc/hosts`. Στο παράδειγμα μας, το αρχείο αυτό μοιάζει με το παρακάτω:

   127.0.0.1 localhost loghost 136.152.64.181 water.CS.Example.EDU water.CS water 136.152.64.1 inr-3.CS.Example.EDU inr-3 slip-gateway 128.32.136.9 ns1.Example.EDU ns1 128.32.136.12 ns2.Example.EDU ns2

2. Βεβαιωθείτε ότι η ενότητα `files` βρίσκεται πριν το `dns` στην ενότητα `hosts:` του αρχείου `/etc/nsswitch.conf`. Αν δεν υπάρχουν αυτές οι παράμετροι, μπορεί να εμφανιστούν παράξενα συμπτώματα.

3. Τροποποιήστε το αρχείο `/etc/rc.conf`.

   1. Ορίστε το όνομα του υπολογιστή σας, τροποποιώντας τη γραμμή που γράφει:

      hostname="myname.my.domain"

      Θα πρέπει εδώ να τοποθετήσετε το πλήρες όνομα του υπολογιστή σας.

   2. Ορίστε τον προεπιλεγμένο δρομολογητή, αλλάζοντας τη γραμμή:

      defaultrouter="NO"

      σε:

      defaultrouter="slip-gateway"

4. Δημιουργήστε ένα αρχείο `/etc/resolv.conf` το οποίο θα περιέχει:

   domain CS.Example.EDU nameserver 128.32.136.9 nameserver 128.32.136.12

   Όπως μπορείτε να δείτε, το παραπάνω ορίζει τους διακομιστές DNS. Φυσικά, τα πραγματικά ονόματα και οι διευθύνσεις των τομέων εξαρτώνται από το περιβάλλον σας.

5. Ρυθμίστε κωδικό πρόσβασης για τους χρήστες `root` και `toor` (καθώς και για όσους άλλους λογαριασμούς δεν έχουν κωδικό).

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

#### 28.7.1.2. Δημιουργώντας μια Σύνδεση SLIP

1. Μετά την κλήση, γράψτε την εντολή `slip` στην προτροπή, γράψτε το όνομα του μηχανήματος σας και τον κωδικό. Το τι ακριβώς χρειάζεται να γράψετε, εξαρτάται από το περιβάλλον σας. Αν χρησιμοποιείτε το Kermit, μπορείτε να χρησιμοποιήσετε ένα script όπως το ακόλουθο:

   # kermit setup set modem hayes set line /dev/modem set speed 115200 set parity none set flow rts/cts set terminal bytesize 8 set file type binary # The next macro will dial up and login define slip dial 643-9600, input 10 =>, if failure stop, - output slip\x0d, input 10 Username:, if failure stop, - output silvia\x0d, input 10 Password:, if failure stop, - output ***\x0d, echo \x0aCONNECTED\x0a

   Φυσικά, θα πρέπει να αλλάξετε το όνομα χρήστη και τον κωδικό ώστε να ταιριάζουν με τα δικά σας. Μετά από αυτό, μπορείτε απλώς να πληκτρολογήσετε `slip` στην προτροπή σύνδεσης του Kermit.

   ### Σημείωση:

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

2. Αφήστε το Kermit εκεί (μπορείτε να το στείλετε στο παρασκήνιο χρησιμοποιώντας τα πλήκτρα Ctrl+z) και ως `root`, γράψτε:

   `#` `slattach -h -c -s 115200 /dev/modem`

   Αν μπορείτε να κάνετε `ping` σε υπολογιστές στην άλλη μεριά του δρομολογητή, είστε συνδεμένοι! Αν αυτό δεν δουλεύει, δοκιμάστε την επιλογή `-a` αντί για την `-c` ως όρισμα στην `slattach`.

#### 28.7.1.3. Πως να Τερματίσετε την Σύνδεση

Κάντε τα ακόλουθα:

`#` `kill -INT `cat /var/run/slattach.modem.pid``

για να τερματίσετε το `slattach`. Θυμηθείτε ότι πρέπει να είστε `root` για να εκτελέσετε το παραπάνω. Έπειτα επανέλθετε στο `kermit` (εκτελώντας την `fg` αν το είχατε στείλει στο παρασκήνιο) και τερματίστε το (πιέζοντας q).

Η σελίδα manual του slattach(8) αναφέρει ότι μπορείτε να χρησιμοποιήσετε την εντολή `ifconfig sl0 down` για να διακόψετε τη σύνδεση, αλλά αυτό δεν φαίνεται να έχει κανένα αποτέλεσμα. (To `ifconfig sl0` αναφέρει το ίδιο πράγμα.)

Μερικές φορές, το modem σας μπορεί να αρνηθεί να κλείσει τη γραμμή. Στις περιπτώσεις αυτές, ξεκινήστε ξανά το `kermit` και τερματίστε το ξανά. Τη δεύτερη φορά συνήθως πετυχαίνει.

#### 28.7.1.4. Αντιμετώπιση Προβλημάτων

Αν το παραπάνω δεν λειτουργήσει, ρωτήστε στη λίστα freebsd-net. Μερικά από τα συνηθισμένα προβλήματα τα οποία έχουμε μέχρι στιγμής αντιμετωπίσει:

- Να μην έχει χρησιμοποιηθεί η επιλογή `-c` ή `-a` στην `slattach` (Αυτό κανονικά δεν είναι κρίσιμο σφάλμα, αλλά μερικοί χρήστες ανέφεραν ότι αυτό έλυσε τα προβλήματα τους.)

- Χρήση του `s10` αντί για `sl0` (η διαφορά μπορεί να είναι πολύ μικρή σε μερικές γραμματοσειρές).

- Δοκιμάστε την εντολή `ifconfig sl0` για να δείτε την κατάσταση της διεπαφής. Για παράδειγμα, μπορεί να δείτε το παρακάτω:

  `#` `ifconfig sl0` sl0: flags=10<POINTOPOINT> inet 136.152.64.181 --> 136.152.64.1 netmask ffffff00

- Αν η εντολή ping(8) δίνει μηνύματα no route to host, ίσως υπάρχει πρόβλημα με τον πίνακα δρομολόγησης σας. Μπορείτε να χρησιμοποιήσετε την εντολή `netstat -r` για να δείτε την τρέχουσα δρομολόγηση:

  `#` `netstat -r` Routing tables Destination Gateway Flags Refs Use IfaceMTU Rtt Netmasks: (root node) (root node) Route Tree for Protocol Family inet: (root node) => default inr-3.Example.EDU UG 8 224515 sl0 - - localhost.Exampl localhost.Example. UH 5 42127 lo0 - 0.438 inr-3.Example.ED water.CS.Example.E UH 1 0 sl0 - - water.CS.Example localhost.Example. UGH 34 47641234 lo0 - 0.438 (root node)

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

### 28.7.2. Ρυθμίζοντας Ένα Εξυπηρετητή SLIP

Το κείμενο αυτό παρέχει κάποιες υποδείξεις για τη ρύθμιση ενός FreeBSD συστήματος ως εξυπηρετητή SLIP. Τυπικά αυτό σημαίνει ότι το σύστημα σας θα ρυθμιστεί να ξεκινά αυτόματα τις συνδέσεις μετά την είσοδο απομακρυσμένων πελατών SLIP.

#### 28.7.2.1. Προϋποθέσεις

Η ενότητα αυτή είναι ιδιαίτερα τεχνικής φύσεως, και για το λόγο αυτό απαιτείται να έχετε τις αντίστοιχες γνώσεις για να την κατανοήσετε. Υποθέτουμε ότι έχετε μια εξοικείωση με το πρωτόκολλο TCP/IP και ειδικότερα με τη διευθυνσιοδότηση κόμβων, τις μάσκες δικτύων, τα υποδίκτυα, τη δρομολόγηση και τα πρωτόκολλα δρομολόγησης όπως το RIP. Η ρύθμιση των υπηρεσιών SLIP σε ένα εξυπηρετητή επιλογικών συνδέσεων απαιτεί γνώση αυτών των εννοιών, και αν δεν είστε εξοικειωμένος με αυτές, σας παρακαλούμε να διαβάσετε είτε το TCP/IP Network Administration του Craig Hunt (εκδόσεις O'Reilly & Associates, Inc, Αριθμός ISBN 0-937175-82-X) ή κάποιο από τα βιβλία του Douglas Comer σχετικά με το πρωτόκολλο TCP/IP.

Επιπλέον, υποθέτουμε ότι ήδη έχετε ρυθμίσει το modem σας και έχετε τροποποιήσει τα κατάλληλα αρχεία ρυθμίσεων του συστήματος ώστε να επιτρέπεται η είσοδος στο σύστημα μέσω των modem. Αν δεν έχετε ακόμα προετοιμάσει το σύστημα για αυτό, παρακαλούμε δείτε το Τμήμα 27.4, &#x201C;Υπηρεσία Εισόδου μέσω Επιλογικής Σύνδεσης (dial-in)&#x201D; για λεπτομέρειες σχετικά με τη ρύθμιση των επιλογικών συνδέσεων. Ενδεχομένως να θέλετε επίσης να δείτε τις σελίδες manual της sio(4) για πληροφορίες σχετικά με το πρόγραμμα οδήγησης της σειριακής θύρας, τα ttys(5), gettytab(5), getty(8), και init(8) για πληροφορίες που σχετίζονται με τη ρύθμιση του συστήματος ώστε να δέχεται είσοδο χρηστών μέσω modem, και ίσως και τη stty(1) για πληροφορίες σχετικά με τις παραμέτρους σειριακών θυρών (όπως την `clocal` για σειριακές διεπαφές που είναι απευθείας συνδεμένες).

#### 28.7.2.2. Γρήγορη Επισκόπηση

Τυπικά, ένας εξυπηρετητής SLIP που χρησιμοποιεί FreeBSD λειτουργεί με τον εξής τρόπο: ένας χρήστης SLIP καλεί τον εξυπηρετητή SLIP, και εισέρχεται στο σύστημα μέσω ενός ειδικού αναγνωριστικού εισόδου για το SLIP. Το κέλυφος του χρήστη είναι το `/usr/sbin/sliplogin`. Το πρόγραμμα `sliplogin` διαβάζει το αρχείο `/etc/sliphome/slip.hosts` για να βρει μια γραμμή που να ταιριάζει με τον χρήστη, και αν υπάρχει, συνδέει την σειριακή γραμμή σε μια διαθέσιμη διεπαφή SLIP και έπειτα εκτελεί το script του κελύφους `/etc/sliphome/slip.login` για να ρυθμίσει τη διεπαφή SLIP.

##### 28.7.2.2.1. Ένα Παράδειγμα Εισόδου σε Εξυπηρετητή SLIP

Για παράδειγμα, για ένα χρήστη SLIP με ID `Shelmerg`, η αντίστοιχη καταχώριση στο `/etc/master.passwd` θα έμοιαζε με την παρακάτω:

Shelmerg:password:1964:89::0:0:Guy Helmer - SLIP:/usr/users/Shelmerg:/usr/sbin/sliplogin

Όταν εισέλθει ο `Shelmerg`, το `sliplogin` θα ψάξει το `/etc/sliphome/slip.hosts` για μια γραμμή με ID χρήστη που να ταιριάζει. Για παράδειγμα, μπορεί να υπάρχει μια γραμμή στο `/etc/sliphome/slip.hosts` που να γράφει:

Shelmerg dc-slip sl-helmer 0xfffffc00 autocomp

Το `sliplogin` θα βρει τη γραμμή αυτή, θα συνδέσει τη σειριακή γραμμή στην επόμενη διαθέσιμη διεπαφή SLIP, και έπειτα θα εκτελέσει το `/etc/sliphome/slip.login` όπως φαίνεται παρακάτω:

/etc/sliphome/slip.login 0 19200 Shelmerg dc-slip sl-helmer 0xfffffc00 autocomp

Αν όλα πάνε καλά, το `/etc/sliphome/slip.login` θα εκτελέσει μια εντολή `ifconfig` για τη διεπαφή SLIP στην οποία έχει συνδεθεί η `sliplogin` (η διεπαφή 0 στο παραπάνω παράδειγμα, η πρώτη παράμετρος της λίστας που δίνεται στο `slip.login`) ώστε να ρυθμιστούν η τοπική διεύθυνση IP (`dc-slip`), η απομακρυσμένη διεύθυνση IP (`sl-helmer`), η μάσκα δικτύου για τη διεπαφή SLIP (`0xfffffc00`), και οποιεσδήποτε πρόσθετες επιλογές (`autocomp`). Αν κάτι πάει στραβά, θα μπορέσετε να το εντοπίσετε από τα αρχεία καταγραφής της `sliplogin`. Η `sliplogin` καταγράφει τα μηνύματα χρησιμοποιώντας το δαίμονα syslogd ο οποίος συνήθως χρησιμοποιεί το αρχείο `/var/log/messages` (δείτε τις σελίδες βοήθειας για τα syslogd(8) και syslog.conf(5) και ενδεχομένως ελέγξτε το `/etc/syslog.conf` για να δείτε την τοποθεσία και το αρχείο που χρησιμοποιεί το syslogd για την καταγραφή).

#### 28.7.2.3. Ρύθμιση του Πυρήνα

Ο προεπιλεγμένος πυρήνας του FreeBSD (ο `GENERIC`) διαθέτει ενσωματωμένη υποστήριξη SLIP (sl(4)). Στην περίπτωση που θέλετε να δημιουργήσετε προσαρμοσμένο πυρήνα, προσθέστε την παρακάτω γραμμή στο αρχείο ρυθμίσεων του πυρήνα σας:

device sl

Το FreeBSD, από προεπιλογή, δεν προωθεί πακέτα. Αν θέλετε ο εξυπηρετητής σας να ενεργεί ως δρομολογητής, θα πρέπει να επεξεργαστείτε το αρχείο `/etc/rc.conf` και να αλλάξετε τη ρύθμιση της μεταβλητής `gateway_enable` σε `YES`. Με τον τρόπο αυτό, θα είναι σίγουρο ότι η επιλογή της δρομολόγησης θα διατηρηθεί μετά από μια επανεκκίνηση.

Θα πρέπει έπειτα να επανεκκινήσετε για να ενεργοποιηθούν οι νέες ρυθμίσεις.

Για να εφαρμόσετε αυτές τις ρυθμίσεις άμεσα, μπορείτε να εκτελέσετε την παρακάτω εντολή ως `root`:

`#` /etc/rc.d/routing start

Παρακαλούμε δείτε το Κεφάλαιο 9, Ρυθμίζοντας τον Πυρήνα του FreeBSD για περισσότερες πληροφορίες σχετικά με την ρύθμιση του πυρήνα του FreeBSD.

#### 28.7.2.4. Ρύθμιση του Sliplogin

Όπως αναφέρθηκε και πριν, υπάρχουν τρία αρχεία στον κατάλογο `/etc/sliphome` τα οποία χρησιμοποιούνται στη ρύθμιση του `/usr/sbin/sliplogin` (δείτε και τη σελίδα manual του sliplogin(8)): το `slip.hosts`, το οποίο ορίζει τους χρήστες SLIP και τις αντίστοιχες IP διευθύνσεις τους, το `slip.login` το οποίο συνήθως ρυθμίζει απλά την διεπαφή SLIP, και προαιρετικά το `slip.logout`, το οποίο αναιρεί τις αλλαγές του `slip.login` όταν τερματίσει η σειριακή σύνδεση.

##### 28.7.2.4.1. Ρύθμιση του `slip.hosts`

Το `/etc/sliphome/slip.hosts` περιέχει γραμμές με τέσσερα πεδία που χωρίζονται μεταξύ τους με κενά διαστήματα:

- Το αναγνωριστικό εισόδου του χρήστη SLIP

- Την τοπική διεύθυνση (τοπική ως προς τον εξυπηρετητή SLIP) της διασύνδεσης SLIP

- Την απομακρυσμένη διεύθυνση της διασύνδεσης SLIP

- Τη μάσκα του δικτύου

Η τοπική και η απομακρυσμένη διεύθυνση, μπορεί να είναι ονόματα υπολογιστών (τα οποία να μετατρέπονται σε διευθύνσεις IP μέσω του `/etc/hosts` ή μέσω του DNS, ανάλογα με τις καταχωρίσεις που υπάρχουν στο αρχείο `/etc/nsswitch.conf`), και η μάσκα δικτύου μπορεί να είναι ένα όνομα το οποίο να μπορεί να διευκρινιστεί μέσω αναζήτησης στο `/etc/networks`. Σε ένα δοκιμαστικό σύστημα, το `/etc/sliphome/slip.hosts` μοιάζει με το παρακάτω:

# # login local-addr remote-addr mask opt1 opt2 # (normal,compress,noicmp) # Shelmerg dc-slip sl-helmerg 0xfffffc00 autocomp

Στο τέλος της γραμμής, βρίσκονται μια ή περισσότερες από τις παρακάτω επιλογές:

- `normal` — χωρίς συμπίεση των επικεφαλίδων

- `compress` — με συμπίεση των επικεφαλίδων

- `autocomp` — με συμπίεση των επικεφαλίδων, αν επιτρέπεται από τον απομακρυσμένο υπολογιστή

- `noicmp` — απενεργοποίηση των πακέτων ICMP (με τον τρόπο αυτό τα πακέτα &#x201C;ping&#x201D; θα απορρίπτονται αντί να καταναλώνουν το εύρος ζώνης της σύνδεσης σας)

Οι επιλογές που έχετε για τις τοπικές και απομακρυσμένες διευθύνσεις των SLIP συνδέσεων σας, εξαρτώνται από το αν πρόκειται να αφιερώσετε ένα υποδίκτυο TCP/IP ή αν πρόκειται να χρησιμοποιήσετε &#x201C;proxy ARP&#x201D; στο SLIP εξυπηρετητή σας (δεν είναι &#x201C;πραγματικό&#x201D; proxy ARP, αλλά στην ενότητα αυτή περιγράφεται με αυτό τον όρο). Αν δεν είστε σίγουρος ποια μέθοδο να επιλέξετε ή πως να αποδίδετε διευθύνσεις IP, παρακαλούμε ανατρέξτε στα βιβλία του TCP/IP που αναφέρονται στις Προϋποθέσεις SLIP (Τμήμα 28.7.2.1, &#x201C;Προϋποθέσεις&#x201D;) ή/και συμβουλευθείτε το διαχειριστή δικτύου σας.

Αν πρόκειται να χρησιμοποιήσετε ξεχωριστό υποδίκτυο για τους SLIP πελάτες σας, θα χρειαστεί να διαθέσετε τον αριθμό υποδικτύου από την διεύθυνση IP που σας έχει αποδοθεί και να αποδώσετε στους πελάτες SLIP διευθύνσεις που ανήκουν σε αυτό το υποδίκτυο. Έπειτα, θα χρειαστεί μάλλον να καθορίσετε μια στατική διαδρομή στο υποδίκτυο SLIP μέσω του εξυπηρετητή SLIP στον κοντινότερο σας δρομολογητή IP.

Διαφορετικά, αν χρησιμοποιήσετε τη μέθοδο &#x201C;proxy ARP&#x201D;, θα χρειαστεί να αποδίδετε στους SLIP πελάτες σας διευθύνσεις IP που ανήκουν στο υποδίκτυο Ethernet στο οποίο ανήκει ο εξυπηρετητής SLIP, και θα χρειαστεί επίσης να ρυθμίσετε τα scripts `/etc/sliphome/slip.login` και `/etc/sliphome/slip.logout` να χρησιμοποιούν το arp(8) για να χειρίζονται τις καταχωρίσεις &#x201C;proxy ARP&#x201D; στον πίνακα ARP του εξυπηρετητή SLIP.

##### 28.7.2.4.2. Ρύθμιση του `slip.login`

Ένα τυπικό `/etc/sliphome/slip.login` μοιάζει με το παρακάτω:

#!/bin/sh - # # @(#)slip.login 5.1 (Berkeley) 7/1/90 # # generic login file for a slip line. sliplogin invokes this with # the parameters: # 1 2 3 4 5 6 7-n # slipunit ttyspeed loginname local-addr remote-addr mask opt-args # /sbin/ifconfig sl$1 inet $4 $5 netmask $6

Το αρχείο `slip.login` εκτελεί απλώς το `ifconfig` για την κατάλληλη διεπαφή SLIP, με τις τοπικές και απομακρυσμένες διευθύνσεις και τη μάσκα δικτύου της διεπαφής αυτής.

Αν έχετε αποφασίσει να χρησιμοποιήσετε την μέθοδο &#x201C;proxy ARP&#x201D; (αντί να χρησιμοποιήσετε διαφορετικό υποδίκτυο για τους πελάτες SLIP), το αρχείο `/etc/sliphome/slip.login` θα μοιάζει με το παρακάτω:

#!/bin/sh - # # @(#)slip.login 5.1 (Berkeley) 7/1/90 # # generic login file for a slip line. sliplogin invokes this with # the parameters: # 1 2 3 4 5 6 7-n # slipunit ttyspeed loginname local-addr remote-addr mask opt-args # /sbin/ifconfig sl$1 inet $4 $5 netmask $6 # Answer ARP requests for the SLIP client with our Ethernet addr /usr/sbin/arp -s $5 00:11:22:33:44:55 pub

Η πρόσθετη γραμμή σε αυτό το `slip.login`, η `arp -s $5 00:11:22:33:44:55 pub`, δημιουργεί μια καταχώριση ARP στον πίνακα ARP του εξυπηρετητή SLIP. Αυτή η καταχώριση ARP κάνει τον εξυπηρετητή SLIP να απαντά με την διεύθυνση Ethernet MAC όταν κάποιος άλλος κόμβος IP στο Ethernet επιθυμεί να επικοινωνήσει με την διεύθυνση IP του πελάτη SLIP.

Όταν χρησιμοποιείτε το παραπάνω παράδειγμα, βεβαιωθείτε ότι έχετε αντικαταστήσει την διεύθυνση MAC του Ethernet (`00:11:22:33:44:55`) με την αντίστοιχη της δικής σας κάρτας Ethernet, διαφορετικά το &#x201C;proxy ARP&#x201D; σίγουρα δεν θα λειτουργήσει! Μπορείτε να ανακαλύψετε τη διεύθυνση MAC του δικού σας εξυπηρετητή SLIP κοιτάζοντας τα αποτελέσματα της εντολής `netstat -i`. Η δεύτερη γραμμή της εξόδου θα μοιάζει με την παρακάτω:

ed0 1500 <Link>0.2.c1.28.5f.4a 191923 0 129457 0 116

Αυτό δείχνει ότι στο συγκεκριμένο σύστημα η διεύθυνση MAC του Ethernet είναι `00:02:c1:28:5f:4a`. Οι τελείες στην διεύθυνση που δείχνει η `netstat -i` πρέπει να αντικατασταθούν με άνω-κάτω τελείες, και κάθε μονό δεκαεξαδικό ψηφίο πρέπει να μετατραπεί σε διπλό προσθέτοντας από μπροστά ένα μηδενικό. Η διεύθυνση μετατρέπεται με αυτό τον τρόπο σε μια μορφή που μπορεί να χρησιμοποιήσει η arp(8). Δείτε τη σελίδα manual της arp(8) για περισσότερες πληροφορίες σχετικά με τη χρήση της εντολής αυτής.

### Σημείωση:

Όταν δημιουργείτε το `/etc/sliphome/slip.login` και το `/etc/sliphome/slip.logout`, θα πρέπει να θέσετε το bit &#x201C;εκτέλεσης&#x201D; (π.χ. `chmod 755 /etc/sliphome/slip.login /etc/sliphome/slip.logout`), διαφορετικά η `sliplogin` δεν θα μπορεί να τα εκτελέσει.

##### 28.7.2.4.3. Ρύθμιση του `slip.logout`

Το `/etc/sliphome/slip.logout` δεν είναι απόλυτα απαραίτητο (εκτός αν πρόκειται να υλοποιήσετε &#x201C;proxy ARP&#x201D;), αλλά αν σκοπεύετε να το δημιουργήσετε, μπορείτε να χρησιμοποιήσετε ως υπόδειγμα το παρακάτω απλό παράδειγμα:

#!/bin/sh - # # slip.logout # # logout file for a slip line. sliplogin invokes this with # the parameters: # 1 2 3 4 5 6 7-n # slipunit ttyspeed loginname local-addr remote-addr mask opt-args # /sbin/ifconfig sl$1 down

Αν χρησιμοποιείτε &#x201C;proxy ARP&#x201D;, θα θέλετε το `/etc/sliphome/slip.logout` να διαγράφει την καταχώριση ARP του πελάτη SLIP:

#!/bin/sh - # # @(#)slip.logout # # logout file for a slip line. sliplogin invokes this with # the parameters: # 1 2 3 4 5 6 7-n # slipunit ttyspeed loginname local-addr remote-addr mask opt-args # /sbin/ifconfig sl$1 down # Quit answering ARP requests for the SLIP client /usr/sbin/arp -d $5

Η `arp -d $5` διαγράφει την καταχώριση ARP που προστέθηκε με την εκτέλεση του `slip.login` του &#x201C;proxy ARP&#x201D;, κατά την είσοδο του πελάτη SLIP.

Πρέπει να το επαναλάβουμε άλλη μια φορά: Βεβαιωθείτε ότι το `/etc/sliphome/slip.logout` έχει οριστεί ως εκτελέσιμο μετά την δημιουργία του (π.χ., `chmod 755 /etc/sliphome/slip.logout`).

#### 28.7.2.5. Παράγοντες που Πρέπει να Λάβετε Υπόψη σας στη Δρομολόγηση

Αν δεν χρησιμοποιείτε την μέθοδο &#x201C;proxy ARP&#x201D; για να δρομολογείτε πακέτα μεταξύ των πελατών SLIP και του υπόλοιπου δικτύου σας (και ενδεχομένως και του Internet), θα πρέπει μάλλον να προσθέσετε στατικές διαδρομές προς τον πλησιέστερο σας προεπιλεγμένο δρομολογητή για να δρομολογείτε το υποδίκτυο των SLIP πελατών σας διαμέσου του εξυπηρετητή SLIP.

##### 28.7.2.5.1. Στατικές Διαδρομές

Η προσθήκη στατικών διαδρομών προς τους πλησιέστερους σας προεπιλεγμένους δρομολογητές, μπορεί να είναι προβληματική (ή και αδύνατη αν δεν έχετε τα κατάλληλα δικαιώματα πρόσβασης). Αν η εταιρία σας διαθέτει δίκτυο με πολλαπλούς δρομολογητές, κάποια μοντέλα (π.χ. από την Cisco και την Proteon), εκτός ότι πρέπει να ρυθμιστούν με την στατική διαδρομή προς το υποδίκτυο SLIP, πρέπει επίσης να ρυθμιστούν με τις στατικές διαδρομές που θα αναφέρουν στους άλλους δρομολογητές. Θα χρειαστεί να πειραματιστείτε και να δοκιμάσετε διάφορες ρυθμίσεις για να δουλέψει η δρομολόγηση μέσω στατικών διαδρομών.

Προηγ | Πάνω | Επόμενο
28.6. Χρησιμοποιώντας PPP μέσω ATM (PPPoA) | Αρχή | Κεφάλαιο 29. Ηλεκτρονικό Ταχυδρομείο

Αυτό το κείμενο, και άλλα κείμενα, μπορεί να βρεθεί στο ftp://ftp.FreeBSD.org/pub/FreeBSD/doc/

Για ερωτήσεις σχετικά με το FreeBSD, διαβάστε την τεκμηρίωση πριν να επικοινωνήσετε με την <questions@FreeBSD.org>.
Για ερωτήσεις σχετικά με αυτή την τεκμηρίωση, στείλτε e-mail στην <doc@FreeBSD.org>.