SwOS is an operating system designed specifically for administration of MikroTik switch products.
SwOS is configurable from your web browser. It gives you all the basic functionality for a managed switch, plus more: allows to manage port-to-port forwarding, broadcast storm control, apply MAC filter, configure VLANs, mirror traffic, apply bandwidth limitation and even adjust some MAC and IP header fields.
CRS3xx series features
|Spanning Tree Protocol||
|Quality of Service (QoS)||
|Access Control List||
This table clarifies the main differences between Cloud Router Switch models.
|Model||Switch Chip||Serial console||PoE-in support||PoE-out support||Health monitor|
|CRS326-24G-2S+||Marvell-98DX3236||+||ether1, Passive PoE||-||CPU temperature|
|CRS328-24P-4S+||Marvell-98DX3236||+||-||ether1 - ether24, 802.3af/at||CPU and board temperature, fan speed, PSU voltage and current, PoE-out monitoring|
|CRS328-4C-20S-4S+||Marvell-98DX3236||+||-||-||CPU temperature, fan speed, PSU state|
|CRS317-1G-16S+||Marvell-98DX8216||+||-||-||CPU temperature, fan speed, PSU state|
|CRS305-1G-4S+||Marvell-98DX3236||-||ether1, 802.3af/at||-||CPU temperature|
|CRS309-1G-8S+||Marvell-98DX8208||+||ether1, 802.3af/at||-||CPU temperature|
|CRS312-4C+8XG||Marvell-98DX8212||+||-||-||CPU temperature, fan speed, PSU state|
|CRS326-24S+2Q+||Marvell-98DX8332||+||-||-||CPU temperature, fan speed, PSU state|
|CRS318-16P-2S+||Marvell-98DX226S||-||-||ether1 - ether16, 802.3af/at||CPU temperature, PSU voltage and current, PoE-out monitoring.|
|CRS318-1Fi-15Fr-2S||Marvell-98DX224S||-||ether1-ether14, ether16, Passive PoE||ether15, Passive PoE||CPU temperature|
Connecting to the Switch
Open your web browser and enter IP address of your Switch (192.168.88.1 by default) and login screen will appear.
SwOS default IP address: 192.168.88.1, user name: admin and there is no password.
SwOS interface menu consists of multiple tabs depending on the device model. These are all possible SwOS menus: Link, PoE, SFP, Port Isolation, LAG, Forwarding, RSTP, Stats, Errors, Hist, VLAN, VLANs, Hosts, IGMP, SNMP, ACL, System, Health and Upgrade.
Description of buttons in SwOS configuration tool:
- Append - add new item to the end of the list
- Apply All - applies current configuration changes
- Cut - removes item from the list
- Clear - resets properties of the item
- Discard Changes - removes unsaved configuration
- Insert - add new item to the list (places it before current item)
- Sort - sort VLAN table by VLAN-IDs; sort host table by MAC addresses
- Change Password - changes password of the switch
- Logout - logout from current Switch
- Reboot - reboot the switch
- Reset Configuration - reset configuration back to factory defaults
- Choose File - browse for upgrade or backup file
- Upgrade - upgrade firmware of the Switch
- Restore Backup - restore Switch using selected backup file
- Save Backup - generate and download backup file from the Switch
System Tab performs the following functions:
- General information about Switch
- Switch management
- Configuration reset
- Backup and restore configuration
|Address Acquisition||Specify which address acquisition method to use:
|Static IP Address||IP address of the switch in case of Address Acquisition is set as
|Identity||Name of the switch (for Mikrotik Neighbor Discovery protocol)|
|Allow From||IP address from which the switch is accessible. Default value is '0.0.0.0/0' - any address|
|Allow From Ports||List of switch ports from which it is accessible|
|Allow From VLAN||VLAN ID from which the switch is accessible (VLAN Mode on ingress port must be other than
|Watchdog||Enable or disable system Watchdog. It will reset CPU of the switch in case of fault condition|
|Independent VLAN Lookup||Enable or disable independent VLAN lookup in the Host table for packet forwarding|
|IGMP Snooping||Enable or disable IGMP Snooping|
|Mikrotik Discovery Protocol||Enable or disable Mikrotik Neighbor Discovery protocol|
|MAC Address||MAC address of the switch (Read-only)|
|Serial Number||Serial number of the switch (Read-only)|
|Board Name||MikroTik model name of the switch (Read-only)|
|Uptime||Current switch uptime (Read-only)|
DHCP & PPPoE Snooping
|Trusted Ports||Group of ports, which allows DHCP or PPPoE servers to provide a requested information. Mainly used to limit unauthorized servers to provide malicious information for users, access ports usually do not configure as trusted|
|Add Information Option||Enables or disables DHCP Option-82 information. When enabled, the Option-82 information (Agent Remote ID and Circuit ID) is added for DHCP packets received from untrusted ports. Can be used together with Option-82 capable DHCP server to assign IP addresses and implement policies|
Password and Backup
Link Tab allows you to configure each interface settings and monitor link status
|Enabled||Enable or disable port|
|Name||Editable port name|
|Link Status||Current link status (Read-only)|
|Auto Negotiation||Enable or disable auto negotiation|
|Speed||Specify speed setting of the port (requires auto negotiation to be disabled)|
|Full Duplex||Specify duplex mode of the port (requires auto negotiation to be disabled)|
|Flow control||Enable or disable 802.3x Flow control|
Devices with PoE-out support have some configuration options and certain monitoring features, like PoE-out current, voltage, etc. For more detailed description, see Manual:PoE-Out.
SFP tab allows you to monitor status of SFP/SFP+ modules.
Port Isolation table allows or restricts traffic forwarding between specific ports. By default, all available switch chip ports can communicate with any other port, there is no isolation used. When the checkbox is enabled/ticked you allow to forward traffic from this port towards the ticked port. Below are some port isolation examples.
IEEE 802.3ad (LACP) compatible link aggregation is supported, as well as static link aggregation to ensure failover and load balancing based on Layer2 and Layer3 hashing.
Up to 16 link aggregation groups with up to 8 ports per a group are supported.
Each individual port can be configured as Passive LACP, Active LACP or a Static LAG port.
|Mode (default: passive)||Specify LACP packet exchange mode or Static LAG mode on ports:
|Group||Specify a Static LAG group|
|Trunk (read only)||Represents group number port belongs to.|
|Partner (read only)||Represents partner mac-address.|
Forwarding Tab provides advanced forwarding options among switch ports, port locking, port mirroring, bandwidth limit and broadcast storm control features.
|Broadcast Storm Control||
Per port and global RSTP configuration and monitoring is available in the RSTP menu.
|Bridge Priority (hex)||RSTP bridge priority for Root Bridge selection|
|Port Cost Mode||There are two methods for automatically detecting RSTP port cost depending on link speed.
|Root Bridge||The priority and MAC address of the selected Root Bridge in the network (Read-only)|
|RSTP||Enable or disable STP/RSTP functionality on this port|
|Mode|| Shows STP/RSTP functionality mode on specific port (Read-only):
|Role||Shows specific port role (Read-only):
|Root Path Cost||Shows root path cost for ports that are facing root bridge (Read-only)|
|State||Shows each port state (Read-only):
Stats, Errors and Histogram
These menus provide detailed information about received and transmitted packets.
VLAN and VLANs
VLAN configuration for switch ports.
|VLAN Mode (disabled | optional | enabled | strict; Default: optional)||VLAN filtering mode, these options are relevant to egress ports (except for strict mode).
|VLAN Receive (any | only tagged | only untagged; Default: optional)||Ingress traffic filtering based on VLAN tag presence.
|Default VLAN ID (integer: 1..4095; Default: 1)||VLAN ID which will be assigned on ingress traffic. Only has effect on untagged traffic, it will be ignored for tagged traffic. This parameter is usually used to allocate access ports with specific VLAN. It is also used to untag egress traffic if packet's VLAN ID matches Default VLAN ID.|
|Force VLAN ID (integer: yes | no; Default: no)||Assigns the
VLAN membership configuration for switch ports.
|VLAN ID (integer: 1..4095; Default: 0)||VLAN ID to which assign ports.|
|Port Isolation (yes | no; Default: yes)||Use settings from
|Learning (yes | no; Default: yes)||Enables or disables MAC address learning on the defined VLAN. If disabled, then all learned MAC addresses will appear as they have had been learned from VLAN 1.|
|Mirror (yes | no; Default: no)||Enables or disables VLAN based mirroring. When enabled and
|IGMP Snooping (yes | no; Default: no)||Enables or disables IGMP Snooping on the defined VLAN. When enabled, the switch will listen to IGMP Join and Leave requests from the defined VLAN and only forward traffic to ports, which have sent IGMP membership requests from the defined VLAN. When disabled, the switch will flood all VLAN member ports with Multicast traffic.|
|Members (ports; Default: none)||Group of ports, which are allowed to forward traffic on the defined VLAN.|
VLAN Configuration Example
Simple trunk and access port configuration, as well as trunk and hybrid port configuration examples can be found in this article - SWOS/CSS326-VLAN-Example.
This table represents dynamically learnt MAC address to port mapping entries. It can contain two kinds of entries: dynamic and static. Dynamic entries get added automatically, this is also called a learning process: when switch receives a packet from certain port, it adds the packet's source MAC address and port it received the packet from to host table, so when a packet comes in with certain destination MAC address it knows to which port it should forward the packet. If the destination MAC address is not present in host table then it forwards the packet to all ports in the group. Dynamic entries take about 5 minutes to time out. CRS3xx devices supports 16383 host table entries.
Static entries will take over dynamic if dynamic entry with same mac-address already exists. Also by adding a static entry you get access to some more functionality.
|Ports||Ports the packet should be forwarded to|
|VLAN ID||VLAN ID|
|Drop||Packet with certain MAC address coming from certain ports can be dropped|
|Mirror||Packet can be cloned and sent to mirror-target port|
|Port||Ports the packet should be forwarded to (Read-only)|
|MAC||Learned MAC address (Read-only)|
|VLAN ID||Learned VLAN ID (Read-only)|
IGMP Snooping which controls multicast streams and prevents multicast flooding is implemented in SwOS starting from version 2.5. The feature allows a switch to listen in the IGMP conversation between hosts and routers.
Enable this option under System tab.
Available IGMP snooping data can be found under IGMP tab:
It is possible to enable IGMP Snooping for a specific VLAN ID under VLANs menu.
SwOS supports SNMP v1 and uses IF-MIB, SNMPv2-MIB, BRIDGE-MIB and MIKROTIK-MIB (only for health, PoE-out and SFP diagnostics) for SNMP reporting.
Available SNMP data:
Host table information
|Enabled||Enable or disable SNMP service|
|Community||SNMP community name|
|Contact Info||Contact information for the NMS|
|Location||Location information for the NMS|
An access control list (ACL) rule table is very powerful tool allowing wire speed packet filtering, forwarding and VLAN tagging based on L2,L3 protocol header field conditions. Each rule contains a conditions part and an action part.
Conditions part parameters
|From||Port that packet came in from|
|MAC Src||Source MAC address and mask|
|MAC Dst||Destination MAC address and mask|
|Ethertype||Protocol encapsulated in the payload of an Ethernet Frame|
VLAN header presence:
|VLAN ID||VLAN tag ID|
|Priority||Priority in VLAN tag|
|IP Src (IP/netmask:port)||Source IPv4 address, netmask and L4 port number|
|IP Dst (IP/netmask:port)||Destination IPv4 address, netmask and L4 port number|
|Protocol (integer)||IP protocol|
|DSCP||IP DSCP field|
Action part parameters
|Redirect To||Force new packets destination port|
|Mirror||Clones packet and sends it to mirror-target port|
|Rate||Limits bandwidth (bps)|
|Set VLAN ID||Changes the VLAN tag ID, if VLAN tag is present|
|Priority||Changes the VLAN tag priority bits, if VLAN tag is present|
This menu provides different health related properties.
|CPU Temperature||Shows CPU temperature in celsius temperature scale (Read-only)|
|Board Temperature||Shows PCB temperature in celsius temperature scale (Read-only)|
|FAN||Shows FAN rotational speed (Read-only)|
|PSU||Shows PSU related information depending on device model (Read-only):
“Dual Boot” feature allows you to choose which operating system you prefer to use, RouterOS or SwOS. Boot RouterOS option is under System tab:
Alternative Dual Boot possibilities: Dual Boot manual
Configuring SwOS using RouterOS
Since RouterOS 6.43 it is possible to load, save and reset SwOS configuration, as well as upgrade SwOS and set an IP address for the switch by using RouterOS. For more details see this article - Configuring SwOS using RouterOS
Reset and Reinstall
CRS3xx devices with a serial console have some additional options.
- To change between RouterOS and SwOS follow these steps:
- Connect to the device using a serial console
- Enter RouterBOOT setup
- Chose "j - boot os"
- Chose either RouterOS or SwOS
- It is possible to load a SwOS backup firmware in case standard firmware breaks or upgrade fails:
- Connect to the device using a serial console
- Boot SwOS
- Choose "p - boot primary SwOS"
- After loading backup firmware, it is possible to connect to 192.168.88.1 using a web browser and install new SwOS firmware.
- To reset SwOS configuration:
- Connect to the device using a serial console
- Boot SwOS
- Choose "r - reset configuration"