inex / ixp-manager Goto Github PK
View Code? Open in Web Editor NEWFull stack web application powering peering at over 200 Internet Exchange Points (IXPs) globally.
Home Page: https://www.ixpmanager.org/
License: GNU General Public License v2.0
Full stack web application powering peering at over 200 Internet Exchange Points (IXPs) globally.
Home Page: https://www.ixpmanager.org/
License: GNU General Public License v2.0
Would like a feature to add generic forms feature to send e-mail for example order forms, upgrade requests or other requests.
Would be helpful if it could populate some data about the currently logged in member or user data.
Option to present a list of ports they want the action on, for example to cancel a port, ask which one.
Doesn't need to be anything fancy to start with e.g. just e-mail out.
Future versions could have a new member registration form which doesn't require a login, but populates the information in to the member database as a prospective member.
When running tools/runtime/do-build-rs-configuration-bird.sh
config files for bird are generated.
But there are a couple of variables not filed in /usr/local/etc/bird-rs1-vlan100-ipv4.conf
and /usr/local/etc/bird-rs1-vlan100-ipv6.conf .
define routeserveraddress = ;
router id ;
listen bgp address ;
In which config file these variables have to be defined?
When first running the manager my browser's default zoom-level caused the header to expand to two lines (the dropdown box wrapped), which is not such a problem by itself. However, the first line of each page was then being masked by the header, rather than being pushed down as well (obviously some absolute positioning has been used in CSS). As a side-note because it was the first I'd seen of the layout I didn't know how it should look, so it took a while to realise it was just a problem with zoom-levels...
Hi,
in MRTG Overall Peering Graphs / Aggregate Graphs there also drop down menus
for Errors and Discards. When I look to the mrtg.conf generated by IXP Manager
there are only two targets generated Target[ixp_peering-bcix-total-bits]
and Target[ixp_peering-bcix-total-pkts]
.
Two solutions:
If editing member registration/billing info but click "Cancel", it bombs out to a page similar to:
https://domain.net/index.php/admin/index
With no CSS etc.
(See attached screenshot)
Through the web-interface the "Known MAC Addresses" page only lists the interfaces which have both ipv4 and ipv6 addresses assigned, even though all the interfaces and their MACs are being correctly populated in the database (including those without ipv6 address).
When I have resources.auth.oss.pwhash = "bcrypt"
in application/configs/application.ini
if I manually bcrypt-hash user passwords and update them directly in the database there is no problem for authorisation, but when I use the web-interface to modify passwords it resets them as plaintext regardless of the config setting.
Two users have mentioned they have:
"+353 86 876 543 / +353 1 765 4321" in their info for phone/fax info.
Can there be an option to turn this off, or put it underneath the text box instead of in it?
(Also we'd quite like "+44 1234 5678") but this seems to be a library thing?)
Would like an option to allow customers to view, and eventually set their own reverse DNS in the ports view page.
Also display the port status e.g "Connected/Awaiting X-Connect/Quarantine" might be useful in customer page.
Hi,
I had several issues in setting up the overall peering graphs.
a. Whitespace Problem
When editing "Home / Infrastructures / Edit -> Infrastructure #1"
in the field "Infrastructure Aggregate Graph Name"
whitespaces should be filtered in the web form already, as the mrtg.cfg file will be broken with white spaces in the target e.g. [ixp_peering-bcix total-bits]
b. capital letters Problem
When editing "Home / Infrastructures / Edit -> Infrastructure #1"
in the field "Infrastructure Aggregate Graph Name"
capital letters should be handled correctly, as the generated files could not be accessed by IXP-Manager frontend later on. e.g. when you use "BCIX-Total" instead of "bcix-total" in the "Infrastructure Aggregate Graph Name"
logs:
Could not load /var/mrtg/ixp_peering-BCIX-Total-bits-month.png for mrtg/retrieveImageAction
c. Missing lines in mrtg.cfg for Directory[ixp_peering-bcix-total-bits] and pkts
Wondering why there are no mrtg config lines
for the directory for the aggregated graphs?
e.g.
Directory[ixp_peering-bcix-total-bits]: aggregate
Directory[ixp_peering-bcix-total-pkts]: aggregate
In my case .png files are put into directory "total" but web frontedn looks in the
mrtg base directory:
logs:
Could not load /var/mrtg/ixp_peering-bcix-total-bits-month.png for mrtg/retrieveImageAction
Files are in /var/mrtg/total/ixp_peering-bcix-total-bits-month.png
(Fixed this with a symbolic link, now)
Thanks, Thorleif
Possible new feature:
script that can read e-mail on stdin and append a note to a member record.
Needs some mechanism to determine which member and if public or private note entry, e.g by address like "membername-private@notes...." or subject, or by ASN etc.
Subject -> Note title
Message body -> note content.
Am happy to write the mail server integration bits.
This would enable other applications to send notes to ixp-manager.
I am getting an error when I click the add button for Customers.
Simon
User profile page and user password recovery pages:
https://xxx/profile/index
https://xxx/auth/reset-password/username/(some _user)/token/8HCHZBKsNV3UBeMjepVxAgLySFnGWQAaJYqPXYGv
Allow short passwords to be set.
User admin page enforces a password length:
https://xxx/contact/edit/uid/99
https://xxxt/default/contact/edit/id/525
In the same manner as we have nightly utilisation (and other emails - see https://github.com/inex/IXP-Manager/wiki/Email-Notifications), we should have one for ports with non-zero error / discard counters.
With each click on any of the action buttons in the utility at (URL)/ixp/utils/apcinfo the utility recursively wraps its own frame in a new IXP-Manager header and side panel, resulting in a "hall of mirrors effect" after a few clicks.
The passwords are not hashed in any way during use, or in the database. This is problematic for two reasons:
In comparing the data from our billing and other databases, we need to know if the member has supplied more recent information.
It would be good to display in the member details and contact details, when the information was last changed.
Hi,
I have copied the files to the folder in my web server but i am unable to install the application. Can you give me like a little tutorial or instructions on what to do
regards
Muga
Hey,
there are some issues with the config file generation,
a. A config file will not be generated, if no file is already available
./bin/ixptool.php -a router-cli.gen-server-conf -p vlanid=1,target=bird,proto=4 --config=/tmp/bird_v4.conf
ERROR: Cannot open / read specificed configuration file
b. Config file stays empty, output only send to STDOUT
touch /tmp/bird_v4.conf
./bin/ixptool.php -a router-cli.gen-server-conf -p vlanid=1,target=bird,proto=4 --config=/tmp/bird_v4.conf
wc -l /tmp/bird_v4.conf
0 /tmp/bird_v4.conf
This is on ubuntu 12.04 LTS with PHP 5.4.19-1+debphp.org~precise+3
I recommend that the upgrade instructions include an extra (fourth) sub-step of step 5 when views-files have been changed, for when someone has skinned them and should mirror any relevant changes across to their skinned-files. The CHANGELOG could also give a heads-up when such changes might be necessary, like it presently does for schema changes, etc, e.g.
... [snip] ...
Schema update required:
CREATE TABLE i_like_traffic_lights (
id BIGINT AUTO_INCREMENT NOT NULL,
colour VARCHAR(255) NOT NULL
)
Views changed:
header.phtml
auth/login.phtml
(if you have skinned these files, mirror any relevant changes to them)
... [snip] ...
error: refs/remotes/origin/master does not point to a valid object!
error: Trying to write ref refs/heads/master with nonexistant object 8edce2413dca7825f01086f4a286c6299e551d6a
fatal: Cannot update the ref 'HEAD'.
Clean install on CentOS 6.4, followed the recipe to the tee. Things started going wrong here, when I went to clone the submodules.
Recommendations? Looks like this was updated recently
Thanks,
Brian
When items in the left nav-menu are clicked and the page is rendered, their menu-item is highlighted blue, but this does not happen for "Infrastructures".
Had a couple of moans about HTML only e-mails (for new user registrations etc)..
Is there a way to do text/plain only or have a text alternative?
logged as myself.
User reporting an error
https://portal.lonap.net/contact/view/id/117
Can Login
Notice: Undefined index: row in /srv/ixp/var/templates_c/333dcdbb5c5bafc472d97892bcd0fdb33fb9a335.file.list-column-uid.phtml.php on line 27
Notice: Trying to get property of non-object in /srv/ixp/var/templates_c/333dcdbb5c5bafc472d97892bcd0fdb33fb9a335.file.list-column-uid.phtml.php on line 27
Have tried clearing the cache but error seems to stay.
Seems mostly cosmetic and specific to the contact 'preview' view.
Rob
This is a feature request:
On the page "Home / VLAN Interfaces / Edit VLAN Interface"
the "route server client" checkbox is currently for both, IPv4 and IPv6.
We have a couple of peers that only peer with IPv6 with our route servers,
e.g. interoute, retn ...
To avoid confusion, it would be great to have two separate checkboxes,
IPv4 route server client
IPv6 route server client
and proper bird route server config files for IPv4 and IPv6, later on.
Thanks, Thorleif
Adding new members (yet to be connected) as state "Not Connected" but they show up as new members before the member is ready to peer.
At {IXPM_URL}/meeting/read
when I try to click the icon to the right of a presentation heading - namely {IXPM_URL}/meeting-item/get-presentation/id/1
- to download the presentation it fails with the message:
Catchable fatal error: Object of class DateTime could not be converted to string in /opt/ixpmanager/application/controllers/MeetingItemController.php on line 134
I don't know if it helps, but this thread might be loosely related. The discussion is in the context of Symfony, but it seems it is a purely Doctrine2 problem...
Following the instructions I get to the libraries downloading and see the following error.
root@stats:/usr/local/ixp# ./bin/library-init.sh
Smarty exists - skipping!
Bootstrap-Zend-Framework exists - skipping!
Minify exists - skipping!
Bootbox exists - skipping!
Throbber.js exists - skipping!
Zend exists - skipping!
Cloning into ./bin/../library/OSS-Framework.git...
remote: Counting objects: 1396, done.
remote: Compressing objects: 100% (542/542), done.
remote: Total 1396 (delta 1053), reused 1160 (delta 819)
Receiving objects: 100% (1396/1396), 9.84 MiB | 52 KiB/s, done.
Resolving deltas: 100% (1053/1053), done.
error: refs/remotes/origin/master does not point to a valid object!
error: Trying to write ref refs/heads/master with nonexistant object a7c1302db3bd51f77ecd0394a4e1bccdc6987b41
fatal: Cannot update the ref 'HEAD'.
root@stats:/usr/local/ixp#
I am doing this on Debian 6.
I only cloned the repo instead of forking? Could this be the cause?
Suggested new feature:
As already discussed on the mailing list
( https://www.inex.ie/pipermail/ixpmanager/2013-September/000168.html )
there seems to be the need for some necessary changes to the existing p2p code
to render the graphs from the generated rrd files by $app/tools/runtime/sflow/sflow-to-rrd-handler.
It would be good if it was possible to store and display not only present MACs, but to keep a history of the changes per peer (similarly to how historical user login times can be stored). If users don't need this info and don't want the bloat there could be a config-option for enabling/disabling...
Hi,
with the current Sflow Documentation ( Configuration part)
https://github.com/inex/IXP-Manager/wiki/Installing-Sflow-Support
I'm currently not able to setup a running environment.
Lot's of questions (for ubuntu lts 12.04): e.g.
And an advanced config section:
Thanks, Thorleif
On two pages I think one instruction should change slightly, another should be added, some extra information added, and two typos fixed. I don't know if you want me editing your wiki directly (or if I can?), so I edited the relevant pages on my own fork of the repo. Please feel free to see the diff against those two pages and incorporate the changes if you want. The diff from your latest version to mine (presently) for those two pages is at:
When clicking the arrows on the web-interface to sort ipv[46]addresses, they are sorted "alphabetically", e.g.:
192.168.1.1
192.168.1.10
192.168.1.2
The sort needs to be changed to "numerical" for these to be meaningful. This also impacts on ipv6 addresses, keeping in mind that it needs to "numerically" sort hex-numbers .
At the moment files (e.g. images) placed in the [IXPM_URL]/public
directory for use by IXP-Manager are also publicly (not-logged-in) accessible by URL. It would be good to have an analogous [IXPM_URL]/private
directory which would be a clearly understood place where IXP-Manager can load images, etc from for a logged in user only (checks login cookie/session). I guess something similar could be achieved by the far more complex method of "wrapping" content inside files with smarty logic in the views directory, but I believe as a simple (and easy-to-understand) option for "non-publicly-viewable" stuff this would also be useful. Example use-case: image files for embedding in documentation pages suitable for logged in users, but not for public browsing...
I have installed BGPQ3 and tested
root@portal:/usr/local/ixp# bgpq3 -Jl eltel AS20597
policy-options {
replace:
prefix-list eltel {
81.9.0.0/20;
81.9.32.0/20;
81.9.96.0/20;
81.222.128.0/20;
81.222.192.0/18;
85.249.8.0/21;
85.249.224.0/19;
89.112.0.0/17;
217.170.64.0/19;
}
}
I added the irrdb.bgpq.path = '/usr/local/bin/bgpq3' to application.ini
root@portal:/usr/local/ixp# /usr/local/ixp//bin/ixptool.php -a irrdb-cli.update-prefix-db -v
ERROR: Invalid controller specified (irrdb-cli)
#0 /usr/local/ixp/library/Zend/Controller/Front.php(954): Zend_Controller_Dispatcher_Standard->dispatch(Object(Zend_Controller_Request_Simple), Object(Zend_Controller_Response_Cli))
#1 /usr/local/ixp/library/Zend/Application/Bootstrap/Bootstrap.php(97): Zend_Controller_Front->dispatch()
#2 /usr/local/ixp/library/Zend/Application.php(366): Zend_Application_Bootstrap_Bootstrap->run()
#3 /usr/local/ixp/bin/ixptool.php(167): Zend_Application->run()
when I try to update prefix prefix filter table
On a clean IXP-Manager install with typical minimal config, when I visit:
_URL_/ixp/mac-address/add
and try to follow the "Do you want to add one
" link: it just reloads the page repeatedly. This was tested on Iceweasel (Firefox) and Chromium (Chrome). Site running on localhost using very recent Mysql and Apache.
When "debug" is on the following URLs show varying between one and ~hundred repeats of the following warning: Notice: Undefined index: YES_NO in /[PATH]/[XX].php on line [X]
/customer/details
/customer/unread-notes
/customer/list
/user/list
/contact/list
/contact-group/list
/switch/list
/switch-port/list
/mac-address/list
From scanning the code it seems YES_NO is not defined where other similarly used index types are, but I don't know Doctrine well enough to fix it myself.
Although these are apparently "warnings", I believe that what is causing them is also breaking other things in a less obvious way for me, so diagnosing this might also fix those...
I think the problem is where $FE_COL_TYPES is defined in: library/OSS-Framework.git/OSS/Controller/Action/Trait/Doctrine2Frontend.php
, if that helps...
Hi,
in _skins/bcix/user/email/html/welcome.phtml
(derrived from the inex template)
I use the following code to generate the lost pwd link:
<a href="{genUrl controller="auth" action="lost-password"}">{genUrl controller="auth" action="lost-password"}</a>
but http://www.bcix.de/ixp/auth/lost-password
instead of https://www.bcix.de/ixp/auth/lost-password
is generated.
With <a href="{$options.identity.url}">{$options.identity.url}</a>
the correct https
link is generated.
Any tips for that?
Hey.
Thanks for the s/w I installed it and logged in for the first time. My main agenda for today is to inquire how to display the MRTG graphs. Currently I want to display the aggregate traffic graph on the IXP Manager Homepage.How do i do it on the main config file to pick the graph. Our graphs link is http://mtambo.kixp.or.ke/mrtg/aggregate.html My thinking is if I can manage that one I will be able to do it for the rest of the members.
thanks
Muga
I don't know how you'd prefer the docs updated for this so I will just raise it as an issue, and perhaps it will not only be a docs issue. Mysql clients and servers (except perhaps the most recent versions) still default to latin1
, so in the instructions at https://github.com/inex/IXP-Manager/wiki/Installation-03-Database-Creation I recommend adding --default-character-set=utf8
to the mysql invocation, or better yet utf8mb4
if you consider this guy's warning important enough. This obviously goes hand-in-hand with my PR #57 which ensured PHP connects in utf8 too... and perhaps the perl-scripts need to be checked similarly too?
NB: there is also the issue of default collation (e.g. utf8-general-ci or utf8-unicode-ci, etc).
Hi,
in the "/ixp/customer/detail/id/1" pages, switch names has inex.de FQDN.
eg. "switchname.inex.de" is displayed
Hi,
I noticed in the IRRDB Source there is no AFRINIC (www.afrinic.net). It refuses to proceed. An update perhaps?
At the Network Information wiki page there is a link near the bottom the the "VLAN entity" file which links to nowhere (thus back to the same wiki page). From a bit of grepping I suspect it should link to something like https://github.com/inex/IXP-Manager/blob/master/application/Proxies/__CG__EntitiesVlan.php but I'm not sure, so am checking here before editing the wiki page...
Feature Request:
Hey, just reviewed the new great route server config documentation coming with version 3.5.3. When I look to the config variables like cid - customer ID
and so one, I'm currently missing a variable for the location. The location is associated in IXP Manger with the switch -> port -> IP and there's also a location short name in the DB.
We'd like to put location short name in the neighbor description as we currently (with OpenBGPD) use this to have a good overview where a peer is connected from a BGP Session perspective. And very helpful if there are any switch related = location related incidents. Here an example for our neighbor description:
$locationshortname-$proto-$cshortname
gives a very nice output in OpenBGPD:
>bgpctl sh
Neighbor AS MsgRcvd MsgSent OutQ Up/Down State/PrfRcvd
g60-v4-tirastel 1547 89945 168908 0 04w3d05h 5/50
k15-v6-syseleven 25291 140439 1088605 0 03w0d07h 9/10
k15-v4-syseleven 25291 140457 247021 0 03w0d07h 25/40
k15-v4-telecolumbus 20880 213010 374395 0 06w0d04h 15/50
k15-v6-telecolumbus 20880 137667 1073379 0 06w1d00h 1/20
n15-v6-interoute 8928 255611 2013573 0 05w4d12h 228/500
n15-v6-xamine 50933 320080 2223393 0 04w2d00h 1/10
a36-v4-kde 31334 506046 955990 0 14w0d09h 81/200
a36-v6-kde 31334 505429 2862111 0 14w0d09h 19/20
n15-v6-versatel 8881 524014 2976777 0 18w0d06h 41/90
n15-v4-versatel 8881 532435 999547 0 18w0d06h 497/900
...
Instead of:
https://www.peeringdb.com/private/participant_view.php?id=%ID%
use ASN automatically:
Example:
Only when viewing a customer's details there is always this error under the IP addresses' field:
x.x.x.x/
Notice: Undefined offset: 1 in /path/to/ixpmanager/var/templates_c/XXXX.file.detail.phtml.php on line 290
When a contact is deleted, delete from mailing list if marked as subscribed via IXP Manager.
This will help us clean the mailing list as users register and delete old contacts etc.
Possibly add option for a list that is only managed via IXP Manager (i.e, if they are not on IXP manager then they aren't added to the list) as we can configure multiple lists in mailman and have umbrella lists or subscribe them to each other, so one can be managed manually and one via IXP Manager.
root@stats:/usr/local/ixp/bin# ./doctrine2-cli.php orm:schema-tool:create
PHP Parse error: syntax error, unexpected '[' in /usr/local/ixp/library/OSS-Framework.git/OSS/Resource/Doctrine2.php on line 88
Parse error: syntax error, unexpected '[' in /usr/local/ixp/library/OSS-Framework.git/OSS/Resource/Doctrine2.php on line 88
root@stats:/usr/local/ixp/bin#
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.