From 4d24a285f6b05ed1012182a8fd84cf3f2c484111 Mon Sep 17 00:00:00 2001 From: Sebastian Lohff Date: Fri, 19 Jan 2018 13:28:52 +0100 Subject: [PATCH] Readme + GPLv3 licensing --- README.md | 24 ++++++++++++++++++++++++ bgpdata/admin.py | 4 ++++ bgpdata/api.py | 4 ++++ bgpdata/models.py | 4 ++++ bgpdata/urls.py | 4 ++++ bgpdata/views.py | 4 ++++ bin/checkmk-routing.sh | 3 +++ bin/crawl.py | 4 ++++ bin/routerparsers.py | 4 +++- dnmapper/settings.default.py | 3 +++ dnmapper/settings.py | 3 +++ dnmapper/urls.py | 4 ++++ dnmapper/wsgi.py | 3 +++ 13 files changed, 67 insertions(+), 1 deletion(-) create mode 100644 README.md diff --git a/README.md b/README.md new file mode 100644 index 0000000..fd223da --- /dev/null +++ b/README.md @@ -0,0 +1,24 @@ +# dnmapper - An AS-level mapping tool and BGP collector + +This software +There is much to do! This software was in parts a quick hack to have a map +when the old map implementation vanished from our network. +It is implemented in Python, Django and D3.js. + +## Data collection +Data collection is done via screenscraping the BIRD and Quagga/FRR cli. This is +a bad idea for longterm operations, as a) the CLI output may (and already did) +change and b) whenever something unexpected happens (e.g. a new route type / +error condition) the software has to be adjusted. + +A second RIS is available, writing periodic MRT dumps and continous BGP update +message MRT dumps. These should be used instead. + +## TODO + + * Replace BGP data collection method + * Add WHOIS data to visualization + +## Licensing +This software is licensed under the GPLv3 or later. + diff --git a/bgpdata/admin.py b/bgpdata/admin.py index 49a0d8f..8430cab 100644 --- a/bgpdata/admin.py +++ b/bgpdata/admin.py @@ -1,3 +1,7 @@ +# This file is part of dnmapper, an AS--level mapping tool +# Licensed under GNU General Public License v3 or later +# Written by Sebastian Lohff (seba@someserver.de) + from django.contrib import admin from bgpdata.models import ConfigHost, CrawlRun, CrawlLog, AS, BorderRouter, Announcement, Peering, BorderRouterPair diff --git a/bgpdata/api.py b/bgpdata/api.py index f14ccb3..4a78cd3 100644 --- a/bgpdata/api.py +++ b/bgpdata/api.py @@ -1,3 +1,7 @@ +# This file is part of dnmapper, an AS--level mapping tool +# Licensed under GNU General Public License v3 or later +# Written by Sebastian Lohff (seba@someserver.de) + from tastypie.resources import ModelResource, ALL_WITH_RELATIONS, ALL from tastypie import fields from bgpdata.models import AS, CrawlRun, Announcement, BorderRouter diff --git a/bgpdata/models.py b/bgpdata/models.py index 9002856..3f66cb0 100644 --- a/bgpdata/models.py +++ b/bgpdata/models.py @@ -1,3 +1,7 @@ +# This file is part of dnmapper, an AS--level mapping tool +# Licensed under GNU General Public License v3 or later +# Written by Sebastian Lohff (seba@someserver.de) + from django.db import models from django.db.models import Q diff --git a/bgpdata/urls.py b/bgpdata/urls.py index f944ead..6d461d2 100644 --- a/bgpdata/urls.py +++ b/bgpdata/urls.py @@ -1,3 +1,7 @@ +# This file is part of dnmapper, an AS--level mapping tool +# Licensed under GNU General Public License v3 or later +# Written by Sebastian Lohff (seba@someserver.de) + from django.conf.urls import patterns, url, include #from django.views.generic import RedirectView from api import ASResource, CrawlResource, BorderRouterResource, AnnouncementResource diff --git a/bgpdata/views.py b/bgpdata/views.py index d61e29f..aaa530d 100644 --- a/bgpdata/views.py +++ b/bgpdata/views.py @@ -1,3 +1,7 @@ +# This file is part of dnmapper, an AS--level mapping tool +# Licensed under GNU General Public License v3 or later +# Written by Sebastian Lohff (seba@someserver.de) + from django.shortcuts import render from bgpdata.models import CrawlRun, AS, Peering from django.core.paginator import Paginator diff --git a/bin/checkmk-routing.sh b/bin/checkmk-routing.sh index c14515c..49d2772 100755 --- a/bin/checkmk-routing.sh +++ b/bin/checkmk-routing.sh @@ -1,4 +1,7 @@ #!/bin/bash +# This file is part of dnmapper, an AS--level mapping tool +# Licensed under GNU General Public License v3 or later +# Written by Sebastian Lohff (seba@someserver.de) # get state from routing information, targeted are routing protocols # currently supporting quagga and bird diff --git a/bin/crawl.py b/bin/crawl.py index 0f66db9..0898a24 100755 --- a/bin/crawl.py +++ b/bin/crawl.py @@ -1,4 +1,8 @@ #!/usr/bin/env python2 +# This file is part of dnmapper, an AS--level mapping tool +# Licensed under GNU General Public License v3 or later +# Written by Sebastian Lohff (seba@someserver.de) + from __future__ import print_function # config diff --git a/bin/routerparsers.py b/bin/routerparsers.py index 2991d47..d6a2c86 100644 --- a/bin/routerparsers.py +++ b/bin/routerparsers.py @@ -1,5 +1,7 @@ #!/usr/bin/env python - +# This file is part of dnmapper, an AS--level mapping tool +# Licensed under GNU General Public License v3 or later +# Written by Sebastian Lohff (seba@someserver.de) from __future__ import print_function import re diff --git a/dnmapper/settings.default.py b/dnmapper/settings.default.py index fa8ef5c..57958d0 100644 --- a/dnmapper/settings.default.py +++ b/dnmapper/settings.default.py @@ -1,3 +1,6 @@ +# This file is part of dnmapper, an AS--level mapping tool +# Licensed under GNU General Public License v3 or later +# Written by Sebastian Lohff (seba@someserver.de) """ Django settings for dnmapper project. diff --git a/dnmapper/settings.py b/dnmapper/settings.py index 66023e5..36ece10 100644 --- a/dnmapper/settings.py +++ b/dnmapper/settings.py @@ -1,3 +1,6 @@ +# This file is part of dnmapper, an AS--level mapping tool +# Licensed under GNU General Public License v3 or later +# Written by Sebastian Lohff (seba@someserver.de) """ Django settings for dnmapper project. diff --git a/dnmapper/urls.py b/dnmapper/urls.py index b2056c6..442e02c 100644 --- a/dnmapper/urls.py +++ b/dnmapper/urls.py @@ -1,3 +1,7 @@ +# This file is part of dnmapper, an AS--level mapping tool +# Licensed under GNU General Public License v3 or later +# Written by Sebastian Lohff (seba@someserver.de) + from django.conf.urls import patterns, include, url from django.contrib import admin from django.views.generic import RedirectView diff --git a/dnmapper/wsgi.py b/dnmapper/wsgi.py index 9be8c96..460bb9a 100644 --- a/dnmapper/wsgi.py +++ b/dnmapper/wsgi.py @@ -1,3 +1,6 @@ +# This file is part of dnmapper, an AS--level mapping tool +# Licensed under GNU General Public License v3 or later +# Written by Sebastian Lohff (seba@someserver.de) """ WSGI config for dnmapper project.