English · Ελληνικά
Ό,τι έχει διδάξει η σειρά μέχρι τώρα, συναρμολογημένο σε ένα δίκτυο που μπορείς πραγματικά να χτίσεις — σε Packet Tracer, GNS3, ή μια στοίβα μεταχειρισμένων switches. Δύο access switches, δύο Layer-3 cores που μοιράζονται gateway με HSRP, ένα LACP interlink, Rapid-PVST roots ευθυγραμμισμένα με το active gateway, και ένα NAT edge. Μετά το σπάμε επίτηδες και βλέπουμε να επιβιώνει.
Κάθε post μέχρι τώρα έκανε config μία τεχνολογία απομονωμένα. Τα πραγματικά δίκτυα είναι εκεί που συναντιούνται — και εκεί που δαγκώνουν οι αλληλεπιδράσεις. Αυτό είναι το πρώτο από τέσσερα σενάρια lab που κλείνουν τη σειρά: ένα collapsed-core campus, ο σχεδιασμός που ταιριάζει στο 90% των ξενοδοχείων, κλινικών, και γραφείων. Δύο Layer-3 switches είναι core και distribution ταυτόχρονα· access switches κάνουν dual-home και στα δύο· ένα router κάνει internet, DHCP, και NAT. Κάθε box έχει redundant path, και η αστοχία οποιασδήποτε μεμονωμένης συσκευής ή καλωδίου είναι επιβιώσιμη.
Μπορείς να χτίσεις ολόκληρη αυτή την τοπολογία σε Cisco Packet Tracer (δωρεάν με λογαριασμό NetAcad) με δύο 3650, δύο 2960, και ένα 2911 — κάθε εντολή σε αυτό το post δουλεύει εκεί. Χτίζεται επίσης αναλλοίωτο σε GNS3/CML ή σε μεταχειρισμένο εξοπλισμό. Ακολούθησε τη σειρά χτισίματος, τρέξε κάθε επαλήθευση, μετά κάνε τις ασκήσεις αστοχίας στο τέλος — το να τραβάς καλώδια είναι όλο το νόημα ενός lab.
01
Δέκα λεπτά addressing plan γλιτώνουν δύο ώρες «γιατί το VLAN 20 δεν φτάνει τίποτα». Γράψ' το όλο πρώτα — σε δουλειά με πελάτη αυτός ο πίνακας ΕΙΝΑΙ το design document.
| VLAN | Σκοπος / subnet / gateway (HSRP VIP) |
|---|---|
| 10 — STAFF | 10.10.10.0/24 · VIP 10.10.10.1 · CORE-1 active |
| 20 — GUEST | 10.10.20.0/24 · VIP 10.10.20.1 · CORE-2 active |
| 30 — VOICE | 10.10.30.0/24 · VIP 10.10.30.1 · CORE-2 active |
| 99 — MGMT | 10.10.99.0/24 · VIP 10.10.99.1 · CORE-1 active |
| Link / interface | Addressing |
|---|---|
| EDGE G0/0 → Internet | 203.0.113.2/30 (gateway ISP .1) |
| EDGE G0/1 ↔ CORE-1 G1/0/24 | 10.255.0.0/30 — EDGE .1, CORE-1 .2 (routed port) |
| EDGE G0/2 ↔ CORE-2 G1/0/24 | 10.255.0.4/30 — EDGE .5, CORE-2 .6 (routed port) |
| CORE-1 ↔ CORE-2 | Po1 = G1/0/23 + G1/0/22, LACP 802.1Q trunk, όλα τα VLAN |
| Cores → access | CORE-x G1/0/1 → ACC-1 G0/1 · G1/0/2 → ACC-2 G0/1/2 — trunks |
| SVIs | CORE-1 = .2 σε κάθε VLAN, CORE-2 = .3, VIP = .1 |
Στήσε το δίκτυο με σειρά εξάρτησης και επαλήθευσε κάθε layer πριν ξεκινήσεις το επόμενο: (1) καλωδίωσε τα πάντα και ονόμασε τις συσκευές, (2) access layer — VLAN, trunks, access ports, (3) core L2 — το port-channel και τα STP roots, (4) core L3 — SVI και HSRP, (5) edge — routed links, routes, DHCP, NAT. Όταν κάτι χαλάσει στο βήμα 5, ήδη ξέρεις ότι τα layers 1–4 είναι εντάξει — αυτή η πειθαρχία είναι το μεγαλύτερο μέρος του πραγματικού troubleshooting.
02
Κατευθείαν από τα parts 2 και 6: όρισε τα VLAN, κάνε trunk τα uplinks και στους δύο cores, και δώσε σε κάθε user port PortFast, BPDU Guard, και ένα VLAN φωνής.
ACC-1(config)# vlan 10 ACC-1(config-vlan)# name STAFF ACC-1(config-vlan)# vlan 20 ACC-1(config-vlan)# name GUEST ACC-1(config-vlan)# vlan 30 ACC-1(config-vlan)# name VOICE ACC-1(config-vlan)# vlan 99 ACC-1(config-vlan)# name MGMT ACC-1(config-vlan)# exit # Uplinks και προς τους ΔΥΟ cores — trunks, native VLAN μετακινημένο από το 1 ACC-1(config)# interface range GigabitEthernet0/1 - 2 ACC-1(config-if-range)# switchport mode trunk ACC-1(config-if-range)# switchport trunk native vlan 99 ACC-1(config-if-range)# switchport trunk allowed vlan 10,20,30,99 # Ports staff: data VLAN 10 + τηλέφωνα στο VLAN 30 ACC-1(config)# interface range FastEthernet0/1 - 12 ACC-1(config-if-range)# switchport mode access ACC-1(config-if-range)# switchport access vlan 10 ACC-1(config-if-range)# switchport voice vlan 30 ACC-1(config-if-range)# spanning-tree portfast ACC-1(config-if-range)# spanning-tree bpduguard enable # Ports επισκεπτών ACC-1(config)# interface range FastEthernet0/13 - 24 ACC-1(config-if-range)# switchport mode access ACC-1(config-if-range)# switchport access vlan 20 ACC-1(config-if-range)# spanning-tree portfast ACC-1(config-if-range)# spanning-tree bpduguard enable # Management SVI ώστε να μπορείς να κάνεις SSH στο ίδιο το access switch ACC-1(config)# interface vlan 99 ACC-1(config-if)# ip address 10.10.99.11 255.255.255.0 ACC-1(config)# ip default-gateway 10.10.99.1
Το copy-paste του config του ACC-1 πάνω στο ACC-2 είναι η κλασική συντόμευση σε lab — και διπλασιάζει σιωπηλά το 10.10.99.11. Δώσε στο ACC-2 10.10.99.12. Σε Packet Tracer ένα διπλό IP απλώς κάνει το SSH να καταλήγει στο λάθος box· σε πραγματικό site βγάζει και τα δύο switches εκτός management network κατά διαστήματα, κάτι που είναι μαρτύριο να το κάνεις debug απομακρυσμένα.
03
Δέσε δύο links ανάμεσα στα cores με LACP, γύρνα τα πάντα σε Rapid-PVST, και καρφώσε το root bridge κάθε VLAN στο core που θα είναι και το HSRP active gateway του.
# Πρώτα ίδιοι ορισμοί VLAN με το access layer (vlan 10,20,30,99) # Δύο φυσικά links → ένα λογικό trunk CORE-1(config)# interface range GigabitEthernet1/0/22 - 23 CORE-1(config-if-range)# channel-group 1 mode active CORE-1(config-if-range)# exit CORE-1(config)# interface Port-channel1 CORE-1(config-if)# switchport mode trunk CORE-1(config-if)# switchport trunk native vlan 99 CORE-1(config-if)# switchport trunk allowed vlan 10,20,30,99 # Downlinks προς τα access switches — ίδιες ρυθμίσεις trunk CORE-1(config)# interface range GigabitEthernet1/0/1 - 2 CORE-1(config-if-range)# switchport mode trunk CORE-1(config-if-range)# switchport trunk native vlan 99 CORE-1(config-if-range)# switchport trunk allowed vlan 10,20,30,99 # Rapid-PVST παντού (τρέξ' το και στα τέσσερα switches) CORE-1(config)# spanning-tree mode rapid-pvst # Το CORE-1 είναι root για τα VLAN στα οποία θα είναι HSRP-active… CORE-1(config)# spanning-tree vlan 10,99 root primary CORE-1(config)# spanning-tree vlan 20,30 root secondary # …και το CORE-2 το καθρεφτίζει: CORE-2(config)# spanning-tree vlan 20,30 root primary CORE-2(config)# spanning-tree vlan 10,99 root secondary CORE-1# show etherchannel summary | include Po1 1 Po1(SU) LACP Gi1/0/22(P) Gi1/0/23(P)
Αν το CORE-2 είναι το STP root για το VLAN 10 αλλά το CORE-1 είναι το HSRP active gateway του, κάθε πακέτο από τα staff ports του ACC-1 ταξιδεύει ACC-1 → CORE-2 → μέσω Po1 → CORE-1 — ένα επιπλέον hop για όλη την κίνηση, για πάντα, αόρατα. Το να ευθυγραμμίζεις root και active ανά VLAN (10/99 στο CORE-1, 20/30 στο CORE-2) σημαίνει ότι το συντομότερο Layer-2 path κάθε frame καταλήγει ακριβώς εκεί που ζει το Layer-3 gateway του. Αυτή η ευθυγράμμιση είναι το βήμα που παραλείπεται πιο συχνά σε πραγματικά campus deployments που κάνουμε audit.
04
Γύρνα τα cores σε routers: ένα SVI ανά VLAN, μια HSRP group ανά VLAN με το VIP που θα χρησιμοποιούν οι clients, preemption ενεργό, και priorities που ταιριάζουν με το πλάνο STP.
CORE-1(config)# ip routing ← η γραμμή που όλοι ξεχνάνε σε ένα switch CORE-1(config)# interface vlan 10 CORE-1(config-if)# ip address 10.10.10.2 255.255.255.0 CORE-1(config-if)# standby 10 ip 10.10.10.1 CORE-1(config-if)# standby 10 priority 110 CORE-1(config-if)# standby 10 preempt # VLAN 99 πανομοιότυπο (priority 110 κι εδώ). # VLAN 20 και 30: ίδια συνταγή αλλά priority 90 — το CORE-2 παίρνει 110 γι' αυτά. # DHCP relay σε κάθε SVI — τα pools ζουν στο EDGE (section 05) CORE-1(config)# interface vlan 10 CORE-1(config-if)# ip helper-address 10.255.0.1 # …επανέλαβε στα VLAN 20/30/99 και στα ΔΥΟ cores # (το CORE-2 κάνει relay στον δικό του uplink peer, 10.255.0.5) CORE-1# show standby brief Interface Grp Pri P State Active Standby Virtual IP Vl10 10 110 P Active local 10.10.10.3 10.10.10.1 Vl20 20 90 P Standby 10.10.20.3 local 10.10.20.1 Vl30 30 90 P Standby 10.10.30.3 local 10.10.30.1 Vl99 99 110 P Active local 10.10.99.3 10.10.99.1
Πρόσθεσε standby 10 track GigabitEthernet1/0/24 30 στις groups VLAN 10 και 99 του CORE-1 (και το καθρέφτισμα στο CORE-2). Αν ένα core χάσει το routed uplink του προς το EDGE, η priority του πέφτει κατά 30 και το άλλο core — του οποίου το uplink ακόμα δουλεύει — αναλαμβάνει το gateway. Χωρίς tracking, ένα core με νεκρό uplink ευχαρίστως μένει HSRP-active και ρίχνει τη μισή σου κίνηση σε blackhole μέσω Po1. Αυτό είναι το part 9 και το part 10 να συναντιούνται σε μία γραμμή config.
05
Το EDGE κατέχει το internet: routed /30 προς κάθε core, static routes προς τα VLAN μέσω και των δύο cores, DHCP pools για κάθε subnet, και PAT overload στο outside interface.
EDGE(config)# interface GigabitEthernet0/0 EDGE(config-if)# ip address 203.0.113.2 255.255.255.252 EDGE(config-if)# ip nat outside EDGE(config)# interface GigabitEthernet0/1 EDGE(config-if)# ip address 10.255.0.1 255.255.255.252 EDGE(config-if)# ip nat inside EDGE(config)# interface GigabitEthernet0/2 EDGE(config-if)# ip address 10.255.0.5 255.255.255.252 EDGE(config-if)# ip nat inside # Default out· τα subnets VLAN προσβάσιμα μέσω ΟΠΟΙΟΥΔΗΠΟΤΕ core (ζεύγη ECMP) EDGE(config)# ip route 0.0.0.0 0.0.0.0 203.0.113.1 EDGE(config)# ip route 10.10.0.0 255.255.0.0 10.255.0.2 EDGE(config)# ip route 10.10.0.0 255.255.0.0 10.255.0.6 # Τα cores χρειάζονται τον δρόμο επιστροφής (σε κάθε core): CORE-1(config)# ip route 0.0.0.0 0.0.0.0 10.255.0.1 CORE-2(config)# ip route 0.0.0.0 0.0.0.0 10.255.0.5 # Ένα DHCP pool ανά VLAN — το gateway είναι το HSRP VIP, ποτέ ένα πραγματικό SVI EDGE(config)# ip dhcp excluded-address 10.10.10.1 10.10.10.10 EDGE(config)# ip dhcp pool STAFF EDGE(dhcp-config)# network 10.10.10.0 255.255.255.0 EDGE(dhcp-config)# default-router 10.10.10.1 EDGE(dhcp-config)# dns-server 1.1.1.1 # …επανέλαβε για GUEST (10.10.20.0), VOICE (10.10.30.0), MGMT εξαιρείται εντελώς # PAT για ό,τι είναι private EDGE(config)# access-list 1 permit 10.10.0.0 0.0.255.255 EDGE(config)# ip nat inside source list 1 interface GigabitEthernet0/0 overload
Ένα PC staff κάνει broadcast ένα DISCOVER· το core που είναι HSRP-active το κάνει relay στο EDGE από τη διεύθυνση SVI του. Αλλά το OFFER επιστρέφει μέσω του routing table του EDGE, που έχει δύο ίσα routes — μπορεί να δώσει την απάντηση στο άλλο core. Αυτό είναι εντάξει (το άλλο core έχει SVI στο ίδιο subnet και το παραδίδει), αλλά μόνο επειδή και τα δύο cores κουβαλούν ip helper-address και SVI για κάθε VLAN. Κάνε config το relay μόνο σε ένα core και το lab δουλεύει μέχρι το πρώτο failover, μετά το DHCP πεθαίνει σιωπηλά — το είδος λανθάνοντος σφάλματος που υπάρχουν τα labs για να διδάξουν.
06
Ένα lab που δεν έσπασες δεν σου δίδαξε τίποτα. Επαλήθευσε το steady state, μετά τρέξε τις τρεις ασκήσεις αστοχίας και δες κάθε προστασία που έκανες config να δικαιολογεί πραγματικά την ύπαρξή της.
| Εντολη | Τι πρεπει να δειχνει το steady-state |
|---|---|
| show etherchannel summary | Po1(SU), και τα δύο members (P) — bundled και σε χρήση. |
| show spanning-tree vlan 10 | Το CORE-1 λέει «This bridge is the root»· το port του ACC-1 προς το CORE-2 είναι ALTN/BLK. |
| show standby brief | Active/standby μοιρασμένα ακριβώς σύμφωνα με τον πίνακα πλάνου. |
| show ip route | Στο EDGE: δύο routes 10.10.0.0/16 (ECMP)· στα cores: από ένα default το καθένα. |
| show ip dhcp binding | Στο EDGE: leases από όλα τα VLAN clients. |
| show ip nat translations | Inside locals από 10.10.x.x πίσω από 203.0.113.2. |
Κλείσε το CORE-1 (σε Packet Tracer, γύρνα τον φυσικό διακόπτη). Από ένα staff PC, τρέξε συνεχές ping στο 8.8.8.8. Θα πρέπει να χάσεις 3–10 δευτερόλεπτα: το CORE-2 κάνει preempt το HSRP για τα VLAN 10/99, το Rapid-PVST ξεμπλοκάρει τα access uplinks προς το CORE-2, και το δεύτερο static του EDGE κουβαλά τη διαδρομή επιστροφής. Άναψε ξανά το CORE-1 — το preemption επιστρέφει τα VIP σε αυτό, ρίχνοντας ξανά για λίγο ένα-δύο pings.
Διάγραψε ένα από τα δύο καλώδια interlink. Το show etherchannel summary τώρα δείχνει ένα member (P), ένα (D) — και τα pings δεν το καταλαβαίνουν καν. Αυτό είναι όλο το επιχείρημα για το bundle: μια φυσική αστοχία έγινε ένα capacity event, όχι outage.
Αυτό είναι το πονηρό. Χωρίς HSRP tracking, οι clients του VLAN 10 στέλνουν ακόμα κίνηση στο CORE-1 (είναι ακόμα HSRP active), το οποίο πρέπει να κάνει detour μέσω Po1 προς το CORE-2 για να φτάσει το EDGE — δουλεύει, αλλά κοίτα το traceroute να μεγαλώνει κατά ένα hop. Με το tracking από το section 04, το CORE-1 υποβιβάζει τον εαυτό του και το detour δεν συμβαίνει ποτέ. Δοκίμασέ το και με τους δύο τρόπους και σύγκρινε traceroutes: αυτή είναι η διαφορά που κάνει το tracking, ορατή.
07
Ο σχεδιασμός είναι vendor-neutral· να όλο το build χαρτογραφημένο σε RouterOS σε έναν πίνακα.
| Αυτο το lab (Cisco) | MikroTik / RouterOS |
|---|---|
| VLAN + trunks 802.1Q | /interface bridge vlan (vlan-filtering=yes), tagged/untagged ports |
| Rapid-PVST + root primary | RSTP στο bridge, priority= ανά bridge (όχι per-VLAN trees) |
| LACP EtherChannel (Po1) | /interface bonding mode=802.3ad |
| HSRP VIP ανά VLAN | VRRP interface ανά VLAN με την ίδια ιδέα VIP |
| SVIs + ip routing | VLAN interfaces στο bridge με διευθύνσεις — το routing είναι πάντα on |
| ip helper-address | /ip dhcp-relay |
| PAT overload στο EDGE | /ip firewall nat action=masquerade |
Χρησιμοποίησε το 3650-24PS για τα cores (κάνει ip routing, HSRP, και LACP), το 2960 για access, και το 2911 για EDGE. Το 3650 του PT ονομάζει τα ports GigabitEthernet1/0/x — τα configs παραπάνω ήδη χρησιμοποιούν αυτό το σχήμα. Δύο ιδιοτροπίες του PT: το HSRP tracking δέχεται interface tracking αλλά όχι το syntax track-object από το part 10, και το spanning-tree vlan X root primary υποστηρίζεται ενώ κάποιες γραμμές λεπτομέρειας του show spanning-tree εμφανίζονται ελαφρώς διαφορετικά από πραγματικό IOS. Τίποτα από τα δύο δεν αλλάζει τον σχεδιασμό.
Συμπερασματα
Σχεδιάζω και χτίζω redundant campus networks με τεκμηριωμένα addressing plans και STP/HSRP που πραγματικά συμφωνούν μεταξύ τους — και τρέχω τις ασκήσεις αστοχίας πριν την παράδοση, όχι μετά το πρώτο πραγματικό outage.
Κλεισε μια Discovery Call →