Skip to content
Bartek Kois edited this page Dec 1, 2016 · 58 revisions

What is GPON Monitor

GPON Monitor is an ASP.NET Core web application intended for quick diagnostic of Dasan Networks GPON OLTs and related ONTs.

GPON Monitor home page

System requirements:

GPON Monitor requires:

  • .NET Core 1.1.0 compatible server (https://www.microsoft.com/net/core),
  • Dasan Networks OLT running software version 6.xx or higher with configured SNMP service,
  • routable connection between server and monitored OLT.

Installation and configuration (for Linux Debian 8.0)

Install .NET Core enviroment:

sudo apt-get install curl libunwind8 gettext
curl -sSL -o dotnet.tar.gz https://go.microsoft.com/fwlink/?LinkID=835021
sudo mkdir -p /opt/dotnet && sudo tar zxf dotnet.tar.gz -C /opt/dotnet
sudo ln -s /opt/dotnet/dotnet /usr/local/bin

Install supervisor and nginx:

sudo apt-get install supervisor nginx

Install GPON Monitor binaries

Download, unpack the latest version od GPONMonitor form https://github.com/bartekkois/GPONMonitor/releases and restore dependencies

curl -sSL -o dotnet.tar.gz https://github.com/bartekkois/GPONMonitor/releases/STH.tar.gz
sudo mkdir -p /var/www_aspnetcore/GPONmonitor && sudo tar zxf STH.tar.gz -C /www_aspnetcore/GPONmonitor
dotnet retore

Configure monitored OLTs

Configure monitored OLTs in GPONMonitor/devicesconfiguration.json (name and SNMP related variables as shown below).

{
  "DevicesConfiguration": {
    "Devices": [
      {
        "Name": "GPON OLT A",
        "IpAddress": "10.1.1.21",
        "SnmpPort": "161",
        "SnmpVersion": "2",
        "SnmpCommunity": "public",
        "SnmpTimeout": 3000
      },
      {
        "Name": "GPON OLT B",
        "IpAddress": "10.1.1.11",
        "SnmpPort": "161",
        "SnmpVersion": "2",
        "SnmpCommunity": "public",
        "SnmpTimeout": 3000
      },
      {
        "Name": "GPON OLT C",
        "IpAddress": "10.2.1.11",
        "SnmpPort": "161",
        "SnmpVersion": "2",
        "SnmpCommunity": "public",
        "SnmpTimeout": 3000
      }
    ]
  }
} 

Configure supervisor:

Change the default configuration in /etc/supervisor/conf.d/GPONMonitor.conf to:

[program:GPONMonitor]
command=/usr/local/bin/dotnet /var/www_aspnetcore/GPONMonitor/GPONMonitor.dll
directory=/var/www_aspnetcore/GPONMonitor
autostart=true
autorestart=true
stderr_logfile=/var/log/GPONMonitor.err.log
stdout_logfile=/var/log/GPONMonitor.out.log
environment=ASPNETCORE_ENVIRONMENT=Production
user=www-data
stopsignal=INT

Restart supervisor:

service supervisor restart

Configure and restart nginx:

Change the default configuration in /etc/nginx/sites-available/default to:

server {
        listen 5001 default_server;
        listen [::]:5001 default_server;
        root /var/www_aspnetcore/GPONMonitor;
        server_name _;

        location / {
                    proxy_pass http://localhost:5000;
                    proxy_http_version 1.1;
                    proxy_set_header Upgrade $http_upgrade;
                    proxy_set_header Connection keep-alive;
                    proxy_set_header Host $host;
                    proxy_cache_bypass $http_upgrade;
        }
}

Restart nginx:

service nginx restart

Usage

Access GPON Monitor through your web browser at http://your_server_ip:5001

Security considerations

For security reasons we highly encourage NOT to expose this application to the public internet and to use it ONLY in your intranet or through the VPN.

Clone this wiki locally