SwOS: Difference between revisions

From MikroTik Wiki
Jump to navigation Jump to search
No edit summary
(34 intermediate revisions by 3 users not shown)
Line 1: Line 1:
==Summary==
SwOS is an operating system designed specifically for administration of MikroTik switch products.
<p>
SwOS is an operating system designed specifically for administration of MikroTik Switch products.
</p>
<p>
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.
</p>


==Connecting to the Switch==
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.


<p>Open your web browser and enter IP address of your Switch (192.168.88.1 by default) and login screen will appear.</p>


[[File:swos_login.png]]
== MikroTik Switch Manuals ==
 
* [[SwOS/RB250_RB260     | RB250/RB260 series Manual]]
<p>SwOS default <i>IP address:</i> <b>192.168.88.1</b>, <i>user name:</i> <b>admin</b> and there is no password.
* [[SwOS/CSS106          | CSS106 (new RB260) series Manual]]
</p>
* [[SwOS/CSS326          | CSS326-24G-2S+ Manual ]]
 
* [[SwOS/CRS3xx          | CRS3xx series Manual]]
{{ Note | MikroTik neighbor discovery protocol tools can be used to discover IP address of Mikrotik Switch. [[Manual:IP/Neighbor_discovery]] }}
== List of Examples ==
 
* [[SwOS/Router-On-A-Stick                | RB250/RB260 with Router-On-A-Stick ]]
==Interface Overview==
* [[SwOS/SWOS-802.1Q-TrunkTwoSwitches     | RB250/RB260 two switches with VLAN trunk ]]
 
* [[SWOS/CSS326-VLAN-Example              | CSS326-24G-2S+/CRS3xx port based VLAN configuration ]]
<p>
SwOS interface menu consists of 10 tabs:  Link, Forwarding, Statistics, VLAN, VLANs, Static Hosts, Hosts, SNMP, ACL and System.
</p>
 
<p>
Description of buttons in SwOS configuration tool:
* <b>Append</b> - add new item to the end of the list
* <b>Apply All</b> - applies current configuration changes
* <b>Cut</b> - removes item from the list
* <b>Clear</b> - resets properties of the item
* <b>Discard Changes</b> - removes unsaved configuration
* <b>Insert</b> - add new item to the list (places it before current item)
* <b>Sort</b> - sort VLAN table by VLAN-IDs; sort host table by MAC addresses
<br/>
* <b>Change Password</b> - changes password of the switch
* <b>Logout</b> - logout from current Switch
* <b>Reboot</b> - reboot the switch
* <b>Reset Configuration</b> - reset configuration back to factory defaults
* <b>Choose File</b> - browse for upgrade or backup file
* <b>Upgrade</b> - upgrade firmware of the Switch
* <b>Restore Backup</b> - restore Switch using selected backup file
* <b>Save Backup</b> - generate and download backup file from the Switch
</p>
 
==System Tab==
 
[[File:swos_system.png|345px|thumb]]
 
<p>System Tab performs the following functions:
* General information about Switch
* Switch management
* Configuration reset
* Backup and restore configuration
* Firmware upgrade</p>
 
<table class="styled_table" >
<tr>
  <th width="25%">Property</th>
  <th >Description</th>
</tr>
<tr>
    <td><b>IP Address</b></td><td>IP address of the Switch</td>
</tr>
<tr>
    <td><b>Identity</b></td><td>Name of the Switch (for Mikrotik neighbor discovery protocol)</td>
</tr>
<tr>
    <td><b>Allow From</b></td><td>IP address from which the service is accessible. Default value is '0.0.0.0/0' - any address
</td>
</tr>
<tr>
    <td><b>Allow From Ports</b></td><td>List of switch ports from which the service is accessible
</td>
</tr>
<tr>
     <td><b>Allow From VLAN</b></td><td>VLAN ID with which  the service is accessible (VLAN Mode on ingress port must be other than <code>'''disabled''' </code>in order to connect)
</td>
</tr>
<tr>
    <td><b>Mikrotik Discovery Protocol</b></td><td>Enable or disable Mikrotik neighbor discovery protocol</td>
</tr>
<tr>
    <td><b>Watchdog</b></td><td>Enable or disable system watchdog. It will reset CPU of the switch in case of fault condition</td>
</tr>
<tr>
    <td><b>MAC Address</b></td><td>MAC address of the Switch (Read-only)</td>
</tr>
<tr>
    <td><b>Version</b></td><td>Firmware version of the Switch</td>
</tr>
<tr>
    <td><b>Uptime</b></td><td>Current Switch uptime</td>
</tr>
</table>
 
 
{{ Note | SwOS uses a simple algorithm to ensure TCP/IP communication - it just replies to the same IP and MAC address packet came from. This way there is no need for Default Gateway on the device itself.}}
 
===Firmware Upgrade===
 
<p>Firmware can be upgraded/downgraded by selecting firmware file and pressing upgrade button. Switch will reboot automatically after successful upgrade.</p>
 
{{ Note | Manual power cycle is necessary 5 seconds after upgrade button is pressed if you are upgrading from SwOS v1.0}}
 
==Link Tab==
 
[[File:swos_link.png|345px|thumb]]
 
<p>Link Tab allows you to:
* Configure Ethernet ports
* Monitor status of Ethernet ports</p>
 
<table class="styled_table" >
<tr>
  <th width="25%">Property</th>
  <th >Description</th>
</tr>
<tr>
    <td><b>Enabled</b></td><td>Enable or disable port</td>
</tr>
<tr>
    <td><b>Link Status</b></td><td>Current link status (Read-only)</td>
</tr>
<tr>
    <td><b>Auto Negotiation</b></td><td>Enable or disable auto negotiation</td>
</tr>
<tr>
    <td><b>Speed</b></td><td>Specify speed setting of the port (requires auto negotiation to be disabled to specify)</td>
</tr>
<tr>
    <td><b>Full Duplex</b></td><td>Specify duplex mode of the port (requires auto negotiation to be disabled to specify)</td>
</tr>
<tr>
    <td><b>Flow control </b></td><td>Enable or disable flow control</td>
</tr>
</table>
 
==Forwarding Tab==
 
[[File:swos_forwarding.png|345px|thumb]]
 
<p>Forwarding Tab provides advanced forwarding options among switch ports, port locking, port mirroring, bandwidth limit and broadcast storm control features. </p>
 
<table class="styled_table" >
<tr>
  <th width="25%">Property</th>
  <th >Description</th>
</tr>
<tr>
    <td><b>Forwarding</b></td><td>Forwarding table - allows or restricts traffic flow between specific ports</td>
</tr>
<tr>
    <td><b>Port Lock</b></td><td>
* <code><b>Port Lock</b></code> - Enable or disable MAC address learning on this port
* <code><b>Lock On First</b></code> - Enable or disable MAC address learning on this port (MAC address from the first recieved packet will still be learnt)</td>
</tr>
<tr>
    <td><b>Port Mirroring</b></td><td>
* <code><b>Mirror Ingress</b></code> - Whether traffic entering this port must be copied and forwarded to mirroring target port
* <code><b>Mirror Egress</b></code> - Whether traffic leaving this port must be copied and forwarded to mirroring target port
* <code><b>Mirror To</b></code> - Mirroring target port</td>
</tr>
<tr>
    <td><b>Bandwidth Limit</b></td><td>
* <code><b>Ingress Rate</b></code> -  Limit traffic entering this port (bps) ''(only supported on RB250GS)''
* <code><b>Egress Rate</b></code> - Limit traffic leaving this port (bps)</td>
</tr>
<tr>
    <td><b>Broadcast Storm Control</b></td><td>
* <code><b>Storm Rate</b></code> -  Limit the number of broadcast packets transmitted by an interface ''(only supported on RB250GS)''
 
* <code><b>Include Unicast</b></code> - Include unicast packets without an entry in host table in <code>Storm Rate</code> limitation ''(only supported on RB250GS)''</td>
</tr>
</table>
 
==Statistics Tab==
 
[[File:swos_statistics.png|345px|thumb]]
 
<p>Provides detailed information about received and transmitted packets.</p>
 
<div style="clear:both;"></div>
 
==Packet Flow==
 
Packet processing through RB250GS is described here: [http://wiki.mikrotik.com/wiki/Manual:Packet_flow_through_Atheros8316 Atheros8316 packet flow diagram]
 
==VLAN Tab==
 
[[File:swos_vlan.png|345px|thumb]]
 
<p>VLAN configuration for Switch ports.</p>
 
 
<table class="styled_table" >
<tr>
  <th width="25%">Property</th>
  <th >Description</th>
</tr>
<tr>
    <td><b>VLAN Mode</b></td><td>
VLAN mode for ingress port:
* <code><b>disabled</b></code> - VLAN table is not used. Switch ignores VLAN tag part of tagged packets
* <code><b>optional</b></code> - Handle packets with VLAN tag ID that is not present in VLAN table just like packets without VLAN tag
* <code><b>enabled</b></code> - Drop packets with VLAN tag ID that is not present in VLAN table. Packets without VLAN tag are treat as tagged packets with <code>Default VLAN ID</code>
* <code><b>strict</b></code> - Same as <code>enable</code>, but also checks VLAN support for inbound interface (drop packets with VLAN tag ID and ingress port that are not present in VLAN table)
</td>
</tr>
<tr>
    <td><b>VLAN Receive</b></td><td>Defines the type of allowed packets on ingress port: <code>any / only tagged / only untagged</code> ''(only supported on RB260GS)''</td>
</tr>
<tr>
    <td><b>Default VLAN ID</b></td><td>Switch will treat untagged ingress packets as they are tagged with this VLAN ID. VLAN tag itself will be added only if there is <code>VLAN Header = add if missing</code> specified on egress port</td>
</tr>
<tr>
    <td><b>Force VLAN ID</b></td><td>Whether to apply <code>Default VLAN ID</code> to incoming packets with VLAN tag</td>
</tr>
<tr>
    <td><b>VLAN Header</b></td><td>
* <code><b>leave as is</b></code> - if VLAN header is present it remains unchanged
* <code><b>always strip</b></code> - if VLAN header is present it is removed from the packet
* <code><b>add if missing</b></code> - if VLAN header is not present it is added to the packet (VLAN ID will be <code>Default VLAN ID</code> of ingress port)
</td>
</tr>
</table>
 
{{ Note | VLAN modes <code><b>enabled</b></code> and <code><b>strict</b></code> require VLAN ID 1 in VLANs table to allow access of untagged traffic to switch itself.}}
 
===Example===
 
*[http://wiki.mikrotik.com/wiki/SwOS/Router-On-A-Stick 802.1Q Trunk]
*[http://wiki.mikrotik.com/wiki/SwOS/SWOS-802.1Q-TrunkTwoSwitches 802.1Q Trunk with two switches]
 
==VLANs Tab==
 
<p>VLAN tables specifies certain forwarding rules for packets that have specific 802.1q tag. Basically the table contains entries that map specific VLAN tag IDs to a group of one or more ports. Packets with VLAN tags leave switch through one or more ports that are set in corresponding table entry. VLAN table works together with destination MAC lookup to determine egress ports. VLAN table supports up to 4096 entries.</p>
 
<h4>RB250GS VLANs tab</h4>
 
[[File:rb250gsvlans.png|alt=Alt text|RB250GS VLANs tab|740px|thumb]]
 
<table class="styled_table" >
<tr>
  <th width="25%">Property</th>
  <th >Description</th>
</tr>
<tr>
    <td><b>VLAN ID</b></td><td>VLAN ID of the packet</td>
</tr>
<tr>
    <td><b>Ports</b></td><td>Ports the packet should be mapped to</td>
</tr>
</table>
 
<h4>RB260GS VLANs tab</h4>
 
[[File:rb260gsvlans.png|alt=Alt text|RB260GS VLANs tab|740px|thumb]]
 
<table class="styled_table" >
<tr>
  <th width="25%">Property</th>
  <th >Description</th>
</tr>
<tr>
    <td><b>VLAN ID</b></td><td>VLAN ID of the packet</td>
</tr>
<tr>
    <td><b>Ports</b></td><td>Each port has individual ''VLAN header'' options for each VLAN ID. Depending on ''VLAN mode'' if lookup is done in this table, egress action of packets is processed by this option. Egress option from '''VLAN tab''' is ignored.</td>
</tr>
</table>
 
==Hosts Tab==
 
[[File:swos_hosts.png|345px|thumb]]
 
<p>This table represents dynamically learnt MAC address to port mapping entries. When Switch receives a packet from certain port, it adds the packets source MAC address X and port it received the packet from to host table, so when a packet comes in with destination MAC address X 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.</p>
 
<div style="clear:both;"></div>
 
{{ Note | RB250GS and RB260GS support 2048 host table entries.  }}
 
<table class="styled_table" >
<tr>
  <th width="25%">Property</th>
  <th >Description</th>
</tr>
<tr>
    <td><b>MAC</b></td><td>MAC address (Read-only)</td>
</tr>
<tr>
    <td><b>Ports</b></td><td>Ports the packet should be forwarded to (Read-only)</td>
</tr>
</table>
 
==Static Hosts Tab==
 
[[File:swos_static_hosts.png|345px|thumb]]
 
<p>Static 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.</p>
 
<table class="styled_table" >
<tr>
  <th width="25%">Property</th>
  <th >Description</th>
</tr>
<tr>
    <td><b>MAC</b></td><td>MAC address</td>
</tr>
<tr>
    <td><b>Ports</b></td><td>Ports the packet should be forwarded to</td>
</tr>
<tr>
    <td><b>Mirror</b></td><td>Packet can be cloned and sent to mirror-target port</td>
</tr>
<tr>
    <td><b>Drop</b></td><td>Packet with certain MAC address coming from certain ports can be dropped</td>
</tr>
</table>
 
==ACL Tab==
 
[[File:swos_acl.png|345px|thumb]]
 
<p>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.  SwOS allow you to implement limited number of access control list rules (32 simple rules (only L2 conditions are used); 16 rules where both L2 and L3 conditions are used; or 8 advanced rules where all L2,L3 and L4 conditions are used).
</p>
 
<p>Each rule contains a conditions part and an action part.</p>
 
<div style="clear:both"></div>
 
<h3>Conditions part parameters</h3>
 
<table class="styled_table" >
<tr>
  <th width="25%">Property</th>
  <th >Description</th>
</tr>
<tr>
    <td><b>From</b></td><td>Port that packet came in from</td>
</tr>
<tr>
    <td><b>MAC Src</b></td><td>Source MAC address and mask</td>
</tr>
<tr>
    <td><b>MAC Dst</b></td><td>Destination MAC address and mask</td>
</tr>
<tr>
    <td><b>Ethertype</b></td><td>Protocol encapsulated in the payload of an Ethernet Frame</td>
</tr>
<tr>
    <td><b>VLAN</b></td><td>
VLAN header presence:
* any
* present
* not present</td>
</tr>
<tr>
    <td><b>VLAN ID</b></td><td>VLAN tag ID</td>
</tr>
<tr>
    <td><b>Priority</b></td><td>Priority in VLAN tag</td>
</tr>
<tr>
    <td><b>IP Src</b> (IP/netmask:port)</td><td>Source IP address, netmask and L4 port number</td>
</tr>
<tr>
    <td><b>IP Dst</b> (IP/netmask:port)</td><td>Destination IP address, netmask and L4 port number</td>
</tr>
<tr>
    <td><b>Protocol</b></td><td>IP protocol</td>
</tr>
<tr>
    <td><b>DSCP</b></td><td>IP DSCP field</td>
</tr>
</table>
 
<h3>Action part parameters</h3>
 
<table class="styled_table" >
<tr>
  <th width="25%">Property</th>
  <th >Description</th>
</tr>
<tr>
    <td><b>Redirect To</b></td><td>Whether to force new destination ports (If <code>Redirect To</code> is enabled and no ports specified in <code>Redirect To Ports</code>, packet will be dropped )</td>
</tr>
<tr>
    <td><b>Redirect To Ports</b></td><td>Destination ports for </td>
</tr>
<tr>
    <td><b>Mirror</b></td><td>Clones packet and sends it to mirror-target port</td>
</tr>
<tr>
    <td><b>Rate</b></td><td>Limits bandwidth (bps) ''(only supported on RB260GS)''</td>
</tr>
<tr>
    <td><b>Set VLAN ID</b></td><td>Changes the VLAN tag ID, if VLAN tag is present</td>
</tr>
<tr>
    <td><b>Priority</b></td><td>Changes the VLAN tag priority bits, if VLAN tag is present</td>
</tr>
</table>
 
 
 
<div style="clear:both"></div>
 
==SNMP Tab==
 
[[File:swos_snmp.png|345px|thumb]]
 
<p>SNMP Tab consists of settings to monitor the Switch remotely.</p>
 
Available SNMP data:
* <code><b>System information</b></code>
* <code><b>System uptime</b></code>
* <code><b>Port status</b></code>
* <code><b>Interface statistics</b></code>
 
<table class="styled_table" >
<tr>
  <th width="25%">Property</th>
  <th >Description</th>
</tr>
<tr>
    <td><b>Enabled</b></td><td>Enable or disable SNMP service</td>
</tr>
<tr>
    <td><b>Community</b></td><td>SNMP community name</td>
</tr>
<tr>
    <td><b>Contact Info</b></td><td>Contact information for the NMS</td>
</tr>
<tr>
    <td><b>Location</b></td><td>Location information for the NMS</td>
</tr>
</table>
 
==Reinstall SwOS firmware==
 
<p>It is possible to upload and install SwOS firmware using BOOTP. This example shows how to reinstall SwOS using RouterOS.</p>
 
{{ Note | Each RouterBoard switch model has its own firmware which cannot be installed on other models. <br />
* RB250GS supports SwOS v1.0 and newer. <br />
* RB260GS supports SwOS v1.7 and newer.  }}
 
* Configure IP address and DHCP server with BOOTP enabled on the installation router.
 
<pre>/ip address
add address=192.168.88.254/24 interface=ether1
</pre>
 
<pre>/ip pool
add name=dhcp_pool1 ranges=192.168.88.1
/ip dhcp-server
add address-pool=dhcp_pool1 bootp-support=dynamic interface=ether1 disabled=no
/ip dhcp-server network
add address=192.168.88.0/24 gateway=192.168.88.254
</pre>
 
*Upload new SwOS firmware file to the router filesystem.
 
<pre>[admin@MikroTik] /file> print
# NAME            TYPE            SIZE                CREATION-TIME     
0 swos-1.2.lzb    .lzb file        38142                sep/02/2010 08:40:17</pre>
 
* Configure TFTP server.
 
<pre>/ip tftp
add allow=yes disabled=no ip-addresses=192.168.88.1 read-only=yes \
    real-filename=swos-1.2.lzb</pre>
 
* Hold the RESET button of the switch when starting it.
* After few seconds ACT LED will start blinking. Wait till ACT LED blinks twice as fast and release RESET button.
* Make ethernet connection between the switch and ethernet port you configured DHCP server on. After few seconds new firmware should be successfully uploaded and installed.
 
== Reset ==
 
There are two ways to reset the device to defaults:
 
=== Jumper reset hole ===
 
Located on the bottom of case, behind one of the rubber feet of all SwOS devices – resets SwOS software to defaults. Must short circuit the metallic sides of the hole (with a screwdriver, for example) and boot the device. Hold screwdriver in place until RouterOS configuration is cleared.
 
=== Reset button ===
 
The only button on the SwOS device. It has two functions:
 
*Hold this button during boot time until LED light starts flashing, release the button to reset SwOS configura-
tion (same result as with reset hole)
*Hold this button during boot time longer, until LED starts to bling twice as fast, and then release it to make the device wait for TFTP firmware upgrade

Revision as of 12:09, 25 April 2019

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.


MikroTik Switch Manuals

List of Examples