show version / the datasheet for your exact SKU before relying on them in production.| Model | CPU / Memory | Ports | PoE | Stacking | Best For |
|---|---|---|---|---|---|
| CBS350-48P-4X (Business 350) |
800 MHz ARM · 256 MB DRAM / 256 MB Flash | 48× Gigabit copper + 4× 10G SFP+ uplinks | Up to 370W (P) or 740W (FP) budget across the 48 ports | Up to 4 units, via any 10G SFP+ port (not StackWise) | SMB wiring closet — L2 + basic static-route L3, easy web UI or CLI |
| C1000-48P-4G-L (Catalyst 1000) |
— (VERIFY) | 48× Gigabit copper + 4× 1G SFP uplinks (4×10G SFP+ on -4X-L variants) | 370W (P) or 740W (FP) budget | None — standalone only, no stacking | SMB/branch replacing older 2960-L gear; simpler than CBS350 to license, no stacking need |
| C9300-48P (Catalyst 9300) |
x86 multi-core · 8 GB DRAM / 16 GB Flash | 48× Gigabit copper + modular uplink bay (1G/10G/25G/40G options) | PoE+/UPOE/UPOE+ depending on PSU and SKU (up to ~90W/port on UPOE+) | StackWise-480 (fixed-uplink) or StackWise-1T (modular C9300X), up to 8 units | Enterprise access layer, SD-Access fabric, full dynamic routing (OSPF/EIGRP/BGP) |
| ISR 4331 (4000 Series ISR) |
4-core (2 data-plane + 1 control + 1 services) · 4 GB DRAM / 4 GB Flash (VERIFY exact defaults for your unit) | 3× onboard GE (WAN/LAN configurable) + 2× NIM slots + 1× SM slot | Optional via PoE NIM module — not onboard | N/A (router, not stacked) | Branch-office WAN router, up to ~100–300 Mbps aggregate throughput |
| ISR1100-4G (1000 Series ISR) |
x86, ~2.2 GHz · 4 GB DRAM / 16 GB eMMC | 4× GE ports, individually configurable as WAN or LAN, + USB 3.0 | Not standard onboard | N/A | Compact modern branch router — IOS-XE or Cisco SD-WAN (Viptela) mode |
Switch> (user EXEC)
Switch> enable
Switch# (privileged EXEC)
Switch# configure terminal
Switch(config)# (global config)
Switch(config)# interface gi1/0/1
Switch(config-if)# (interface config)
Switch(config)# hostname sw-access-01
Switch(config)# enable secret StrongPass123!
Switch(config)# username netops secret StrongPass123! privilege 15
Switch(config)# ip domain-name lab.local
Switch(config)# crypto key generate rsa modulus 2048
Switch(config)# line vty 0 15
Switch(config-line)# transport input ssh
Switch(config-line)# login local
? before scripting it, rather than assuming full IOS-XE parity.Switch(config)# vlan 20
Switch(config-vlan)# name USERS
Switch(config)# vlan 30
Switch(config-vlan)# name VOICE
Switch(config)# interface gi1/0/5
Switch(config-if)# switchport mode access
Switch(config-if)# switchport access vlan 20
Switch(config-if)# switchport voice vlan 30
Switch(config)# interface gi1/0/49
Switch(config-if)# switchport mode trunk
Switch(config-if)# switchport trunk allowed vlan 10,20,30
Switch(config-if)# switchport trunk native vlan 999
Switch(config)# interface range gi1/0/1-24
Switch(config-if-range)# switchport mode access
Switch(config-if-range)# switchport access vlan 20
Switch# show vlan brief
Switch# show interfaces trunk
Switch# show interfaces switchport
Switch(config)# interface vlan20
Switch(config-if)# ip address 10.0.20.1 255.255.255.0
Switch(config)# ip routing
Switch(config-if)# speed auto
Switch(config-if)# duplex full
Switch(config-if)# description Link-to-AP-3F
Switch(config-if)# power inline auto
Switch(config-if)# power inline never
Switch# show power inline
Switch(config)# interface range gi1/0/47-48
Switch(config-if-range)# channel-group 1 mode active
Switch(config)# interface port-channel1
Switch(config-if)# switchport mode trunk
Switch# show interfaces status
Switch# show interfaces gi1/0/5
Switch(config)# errdisable recovery cause bpduguard
Switch(config)# errdisable recovery interval 300
Switch# show cdp neighbors detail
Switch# show lldp neighbors detail
Router(config)# ip route 0.0.0.0 0.0.0.0 203.0.113.1
Router(config)# ip route 10.10.0.0 255.255.0.0 10.0.0.254
Router# show ip route
Router(config)# router ospf 1
Router(config-router)# network 10.0.0.0 0.0.0.255 area 0
Router(config-router)# passive-interface gi0/0/0
Router(config)# router eigrp 100
Router(config-router)# network 10.0.0.0 0.0.0.255
Router(config-router)# no auto-summary
Router(config)# router bgp 65001
Router(config-router)# neighbor 203.0.113.1 remote-as 65000
Router(config-router)# network 198.51.100.0 mask 255.255.255.0
Switch(config-if)# standby 1 ip 10.0.20.1
Switch(config-if)# standby 1 priority 110
Switch(config-if)# standby 1 preempt
Router# show ip protocols
Router# show ip ospf neighbor
Router# show ip bgp summary
Switch(config)# spanning-tree mode rapid-pvst
Switch(config)# spanning-tree vlan 20 priority 4096
Switch(config-if)# spanning-tree portfast
Switch(config-if)# spanning-tree bpduguard enable
Switch# show spanning-tree
Switch# show spanning-tree vlan 20
Switch# show spanning-tree summary
Router(config)# ip access-list standard MGMT-ONLY
Router(config-std-nacl)# permit 10.0.0.0 0.0.0.255
Router(config)# line vty 0 15
Router(config-line)# access-class MGMT-ONLY in
Router(config)# ip access-list extended BLOCK-TELNET
Router(config-ext-nacl)# deny tcp any any eq 23
Router(config-ext-nacl)# permit ip any any
Router(config)# interface gi0/0/1
Router(config-if)# ip access-group BLOCK-TELNET in
Switch(config-if)# switchport port-security
Switch(config-if)# switchport port-security maximum 2
Switch(config-if)# switchport port-security violation restrict
Switch(config-if)# switchport port-security mac-address sticky
Switch(config)# ip dhcp snooping
Switch(config)# ip dhcp snooping vlan 20
Switch(config-if)# ip dhcp snooping trust
Switch(config)# ip arp inspection vlan 20
Switch(config-if)# ip arp inspection trust
Switch# show access-lists
Switch# show port-security interface gi1/0/5
Switch# show ip dhcp snooping binding
Switch# show switch
Switch(config)# switch 2 priority 15
Switch# copy running-config startup-config
Switch# write memory
Switch# copy running-config tftp://10.0.0.5/sw-backup.cfg
Switch# copy startup-config tftp://10.0.0.5/sw-backup.cfg
Switch# copy tftp://10.0.0.5/sw-backup.cfg startup-config
Switch# reload
Switch# copy tftp://10.0.0.5/cat9k_iosxe.bin flash:
Switch(config)# boot system flash:cat9k_iosxe.bin
Switch# reload
Router(config)# archive
Router(config-archive)# path flash:archive-cfg
Router# configure replace flash:archive-cfg-3 force
Router# ping 8.8.8.8
Router# traceroute 8.8.8.8
Switch# show logging
Switch(config)# logging host 10.0.0.5
Switch(config)# logging trap informational
Router# debug ip ospf adj
Router# undebug all
Router# show processes cpu sorted
Router# show memory statistics
Switch# show environment
Switch# show mac address-table
Router# show arp
Switch# show running-config | section interface Gi1/0/5
Switch# show running-config | include vlan
| Symptom | Likely Cause / Fix |
|---|---|
| Port stuck in err-disabled | check show interfaces status err-disabled cause; shutdown / no shutdown or errdisable recovery |
| Trunk passes no traffic for a VLAN | VLAN missing from switchport trunk allowed vlan list, or not created with vlan <id> |
| Config lost after reload | forgot copy running-config startup-config / write memory before reload |
| OSPF/EIGRP neighbor won't form | mismatched area/AS, hello/dead timers, or an ACL/firewall blocking the routing protocol |
| PoE device won't power up | check show power inline — PoE budget exhausted, or power inline never set on that port |
| Locked out after ACL/line vty change | console in, remove/adjust access-class, or restore last saved config |
| Command / Action | Risk |
|---|---|
| write erase / erase startup-config | destructive wipes saved config; still live until reload |
| configure replace ... force | caution overwrites running config immediately with the archived file |
| spanning-tree portfast on a non-edge port | destructive risks a forwarding loop if that port later connects another switch |
| no shutdown on an unverified interface | caution can bridge two VLANs/segments unexpectedly if cabling is wrong |
| debug all / debug ip packet | destructive can peg CPU and drop the management session on lower-end switches |
| copy running-config startup-config | safe standard save — no destructive side effects |