The Dude – Network 
management and monitoring 
        software
        Pauls Jukonis
       MikroTik, Latvia
         MUM Vietnam
           April 2017
             Overview
  The Dude  First steps
  The Dude Tools
  The Dude Notifications
  CHR overview
            The Dude
One of the most powerful free network monitors
     The Dude development
           ●
               First version released in 2006
       ●
           4.0beta3 was the latest version
       ●
           Development renewed in 2016
●
    The Dude is integrated back to RouterOS 
                    package
 The Dude v6.x changes
The Dude server The Dude client
   ALL CCR         Windows
      (TILE)
  CHR / x86         Webfig
RB3011/1100x4       Winbox
     (ARM)
    RB hEX              CLI
     (MMIPS)       In development...
The Dude web interface
The Dude web interface
             ●
                 Provides web access from 
                 any browser 
             ●
                 No installation required
             ●
                 Provides configuration options
             ●
                 Accessible  at 
                 <ServerIP>/webfig/
             ●
                 Starting from RouterOS 6.38
                   Prepare a server...
Install The Dude server:
1) Download The Dude server package 
(mikrotik.com/download)
2) Upload it to the RouterOS file system
3) Reboot RouterOS
Enable The Dude server:
1) Specify directory where the 
database will be stored
 /dude set datadirectory= disk1/new
2) Enable The Dude
 /dude set enabled=yes
          Recommendations for a 
                server...
File system:                                Backups:
It’s suggested to use ext3 type file        Make sure that regular database 
system, it’s more reliable as a The         backups are made
Dude storage file system
Format drive using command:                 Disk drive:
/disk formatdrive disk1 filesystem=ext3
                                            Allways use industrial grade 
                                            mircoSD cards and USB flashes as 
File storage:
                                            they have longer life cycle
If custom files are used, keep them 
                                            If possible use USB instead of micro 
in "(datapath)/files/" directory           SD card, this will give you better 
                                            read/write performance
                   Prepare a client...
Install The Dude client:
1) Download The Dude client
2) Install
3) Access the server
Use Webfig interface:
1)  <Server IP>/webfig/
Use Winbox interface:
1) Winbox tool > Dude 
                       ●
                           The Dude login uses RouterOS users
               ●
                   To log in the Dude server, dude policy is required
               ●
                   The Dude client uses default Winbox port  8291 
           Discover your network
    Discovery features:                             Discovered services:
●
    Automaticially scan specified network       ●
                                                    ICMP (ping)
●
    Automaticially layout map after scan        ●
                                                    DNS
●
    Can use agents to scan networks that are    ●
                                                    SSH
    not directly accessible to  server          ●
                                                    Telnet
                                                ●
                                                    HTTP
                                                ●
                                                    FTP
                                                ●
                                                    RouterOS management
                                                ●
                                                    Other...
Edit network map
        ●
            Add new networks
        ●
            Add new devices
        ●
            Add submaps
        ●
            Add customised backgrounds 
            (Maps / Plannings)
        ●
            Add customised info on the labels 
            (Text / SNMP / RouterOS data)
        ●
            Edit layout
        ●
            Edit appearance of devices / links 
            (shapes, colours)
        ●
            Edit device / link speed warnings
Use custom backgrounds
The Dude allows to use custom images in background, for example 
 maps, that will create more understandable view of your network
    Use agents in The Dude
Agents allow to monitor remote sites which are 
 not directly accessible from The Dude server
                                             Device
Device is network object which is monitored by The Dude server
●
    Stores general info of a device
●
    Shows all available SNMP data 
    (Interface list, traffic, route list, 
    ip list, arp table, etc.)
●
    Shows additional RouterOS 
    data
●
    Stores all graphs of service 
    latencies
●
    Stores custom data graphs 
    (CPU / Disk / Memory usage)
●
    Stores all service outage 
    history
●
    Editable services which will be 
    monitored
                       Device
   Hovering your 
mouse cursor over 
a device item will 
 show you a quick 
   graph of the 
service availability
       Device tree structure
Device tree structure allows to create logical child  parent hierarchy in the 
 network, which later can be used for advanced notification delivering.
                                       ●
                                           Notifications will be sent only about 
                                           parent devices
                                       ●
                                           If parent is down, child statuss will 
                                           stay “Unknown”
                                       ●
                                           Easy configurable – select multiple 
                                           devices, set one parrent 
                                       ●
                                           Helps to avoid unnecessary 
                                           notification messages
                                      Links
●
    Links represent a connection        ●
                                            Links speeds can be monitored using 
    between devices/networks                SNMP or RouterOS management.
●
    Automatically stores graphical      ●
                                            Choose from predefined link types 
    history of a data transmit              (shapes / speeds)
●
    Indicates link usage by changing 
    the link colour
                                Charts
Charts allows to create a graphical representation of data stored 
                       by The Dude server
Charts can be made from:
●
  Automatically stored data, 
  for example link speeds 
  and device service 
  latencies
●
  Manually created data 
  sources (SNMP / RouterOS 
  data)
        ●
            Unlimited number of charts can be created in The Dude server
                    ●
                      Each chart can have multiple data sources
                                        Charts
    To create custom graphs, first you need to create new data 
          source from SNMP or function command output
Get data using SNMP:                       Get data using functions:
●
  Check available OIDs                     ●
                                             Function ros_command allows to 
                                             capture output from RouterOS 
                                             device and use it as a value for 
                                             charts
                                              ros_command("/interface wireless 
                                              registrationtable print countonly
                                                   where interface=wlan1") 
●
    Use OID code to store values
 oid("1.3.6.1.4.1.14988.1.1.3.10.0") 
                                        Files
The Dude allows to use custom files:          File structure: 
    ●
        Images – Background maps, device       ●
                                                   The Dude default files are stored in 
        labels                                     (datapath)/files/default and have 
                                                   readonly permission
    ●
        MIBS – To get custom SNMP data 
        from devices                           ●
                                                   Custom files should be stored in 
                                                   (datapath)/files/ directory
    ●
        RouterOS packages – To perform 
        auto upgrade on monitored 
        devices
Files can be managed using:                   Backups: 
●
        Winbox / Webfig / FTP / SMB / Tool    ●
                                                   Backups also include files
        fetch
                                   Logs
                 ●
                       Logs store records of device status history
                   ●
                       The Dude can be used as a syslog server
      ●
          All logs can be viewed from the RouterOS and The Dude server 
Logs in The Dude                              Enable logs in RouterOS
                                           Enable RouterOS  logs from CLI
The Dude Tools
                                  Tools
●
    Tools manage utilities and programs 
    that can be executed from The 
    Dude
●
    Tools can use variables from 
    monitored devices, and pass them 
    to other programs
●
    The Dude allows to add your own 
    custom tools
●
    Custom tools are added by 
    specifying a  command or path to 
    the program
                                Ping
●
    Allows to quickly check response time between devices
●
    Allows to change some ICMP packet settings: packet size, TTL, speed
●
    Ping is sent from a selected device
                       Traceroute
    Diagnostic tool for displaying a route and mesure transit delays
●
    Uses ICMP to determine the path from selected device to specified host
                     SNMP walk
   Use SNMP walk tool to overview the information available over SNMP
                                                 Returned results can be 
                                                 viewed in 3 ways:
                                                 ●
                                                     List – Shows OID, type 
                                                     and value
                                                 ●
                                                     Tree – Results are 
                                                     ordered in a tree look 
                                                     structure
                                                 ●
                                                     Table shows 
                                                     corresponding MIB 
                                                     module and a 
                                                     description 
Each returned OID can be used to create a custom data source, for example 
to create a chart
                          Terminal
●
    Gives a quick way to login in selected decive using terminal
●
    Tool opens a new CLI window that can be used to execute commands and 
    receive responses
                     Torch
Tool torch is a real time traffic monitor which can be called 
                    directly from The Dude
                                  Returned results can be viewed in 3 
                                  ways:
                                  ●
                                      Table – traffic flow shown in a list
                                  ●
                                      Pie  shows graphical 
                                      representation of current traffic 
                                      flow
                                  ●
                                      Bar – traffic shown in bar type 
                                      graphical images
           Bandwidthtest
The Dude allows to quickly measure available bandwidth 
          between devices with a single click
Spectralscan
               Spectral scan can scan 
                    all frequencies 
                  supported by the 
                   selected device
      Different graphs are available
                      External tools
The Dude provides some predefined tools that will be executed on OS where 
The Dude client is installed on. 
This provides a quick way to access selected device with a chosen service 
using one click.
●
    FTP – Opens FTP connection to 
    selected device
●
    Web – Opens web browser                FTP command example
    with device URL
●
    Telnet – Connects using telnet 
    protocol
●
    Dude – Opens a new Dude 
    client if selected device is a 
    Dude server
                         Custom tools
     Winbox tool – requires path to executable Winbox file on your OS
Hard path to winbox.exe
C:\Users\support\Desktop\winbox.exe [Device.FirstAddress] [Device.UserName] "[Device.Password]"
Path to winbox.exe using OS variables 
 %HOMEPATH%\Desktop\winbox.exe [Device.FirstAddress] [Device.UserName] "[Device.Password]"
     This tool will open Winbox with already provided IP, Username and 
     Password
                         Custom tools
  Remote shutdown – When clicked, The Dude executes command that 
                   will shut down Windows device
 Hard path to winbox.exe
              c:\windows\system32\shutdown.exe s t 30 /m \\[Device.FirstAddress]
  Connect with VNC – Command allows to connect to a remote PC via 
                         UltraVNC client 
   D:\programs\uvnc\vncviewer.exe connect [Device.FirstAddress] password [Device.Password]
Windows PSremote – Open Powershell window and use Windows PSremote 
   feature from The Dude client to access Windows workstations where 
                        PSremoting is enabled. 
   D:\programs\uvnc\vncviewer.exe connect [Device.FirstAddress] password [Device.Password]
      ●
          The Dude supports any executable process/programm that can be 
                                started from OS CLI
The Dude Notifications
                       Notifications
Notifications in The Dude can trigger some action if 
    a device or some service is not responding
Available predefined notification actions:
●
    Beep – Makes a beeping sound from the PC speaker of the server PC
●
    Flash – Flashes The Dude taskbar menu
●
    Log – Saves message in The Dude log file
●
    Syslog – Saves information to a remote Syslog server
●
    Popup – Opens a small notification window
●
    Email – Sends email to a specified recipient
●
    Execute locally – Runs command on the local Windows machine (where The 
    Dude viewer runs)
●
    Execute on server – Execute RouterOS command/script on The Dude server
●
    Sound – Plays sound from specified sound file
●
    Group – Executes a group of actions
●
    Speak – Uses Windows speech to play digital voice message
                  Notifications
Notifications can be        1. Choose device/s 
created with a few clicks   2. Specify notification type
                            3. Specify services that will be monitored
                 Telegram messenger 
                 notification example
 Using notification type  execute on server, The Dude can send 
 messages using HTTP protocol, for example to Telegram 
 messenger.
 1) Make a server or web app that can receive messages sent by The Dude, in 
    this case a Telegram bot (https://core.telegram.org/api)
 2) Specify URL where the messages will be sent to 
/tool fetch url="https://api.telegram.org/bot309683994:AAFh8645FeAOgUbcOgUVIhtclbmzpwwIXpAB/sendMessage\?
chat_id=312605050&text=ExampleMessage" keepresult=no
3) Add variables to a message for more useful notification 
...&text=  Time: [Time]; Device: [Device.FirstAddress]; Status: [Service.Status] "
Telegram messenger 
notification example
        Telegram messenger 
        notification example
 When a notification command will be triggered by the Dude, 
the Telegram messenger will receive end resend a message for 
                             you
            Facebook notification 
                 example
   Since The Dude can execute commands with arguments locally 
     on a operating system where The Dude client is installed, this 
     option can be used to create a custom notification methods 
1) executes local            2) Uses arguments                        3) Delivers 
 shell script and              to create and                         notification 
passes arguments              send HTTP POST                        message to a 
                                   request                        specified recipient
                         ●
                             Following example requires working Facebook messenger bot
                             https://developers.facebook.com/docs/messengerplatform
               Facebook notification 
                    example
                        To call a custom program on local OS, The Dude 
                       need to know a path of the program, and the text 
                                which will be passed as argument
Code example:
  /home/pauls/Desktop/./Facebook.sh "[Time] Device [Device.Name], [Service.Status]"
Where a path to program is:
  /home/pauls/Desktop/./Facebook.sh
Argument that will be passed:
  "[Time] Device [Device.Name], [Service.Status]"
              Facebook notification 
                   example
                            Since delivering messages over Facebook requires 
                                   HTTP POST request with content type: 
                              application/json, we need to use some custom 
                                     program to create such request.
                                           e.g. simple shell script
Code executed by The Dude:
 /home/pauls/Desktop/./Facebook.sh "[Time] Device [Device.Name], [Service.Status]"
Argument received by Facebook.sh from The Dude:
 21:37:36 Device 10.5.115.8, down
                                                Facebook.sh example
             Facebook notification 
                  example
                       Shell script uses curl to create a HTTP POST request 
                      and send it to a specified recipient. Message is sent 
                       each time when specified device changes status 
●
    Message content is created by The Dude server             Received message
●
    Message is sent using custom program (e.g shell script)
●
    Message is delivered using Facebook messenger bot
       Additional resources
Forum – User discussions about The Dude, version changelogs
                 https://forum.mikrotik.com
                   Wiki – The Dude manuals
      https://wiki.mikrotik.com/wiki/Manual:The_Dude
    Support – Feature requests, suggestions, bug reports
                   [email protected]
CHR
CHR – Cloud Hosted Router
    ●
        CHR is a RouterOS version intended for 
            running as a virtual machine
    ●
        Runs on VMware Workstation and ESXi, 
        VirtualBox, HyperV, KVM, XenServer, etc
        ●
            Cloud services  Amazon, Azure and 
                           others
CHR – Cloud Hosted Router
              ●
                  60 day trial available
    ●
        Purchased license can be transferred
CHR – Cloud Hosted Router
 CHR can be installed in few steps:
 1) Download a virtual disk image (mikrotik.com/download)
 2) Create a guest virtual machine
 3) Use previously downloaded image file as a virtual disk drive
 4) Start the guest CHR virtual machine
 5) Log in to your new CHR. Default user is 'admin', without password
            https://wiki.mikrotik.com/wiki/Manual:CHR
  Suggestions?
Feature requests?
 THANK YOU!