Added BGP Peer Descriptions (#9165)

* Added BGP Peer Descriptions

* Fixed formatting

* Added to device routing tab too

* Some text formatting

* Test files

* Added default null to bgpPeerDescr

* Added db_schema.yaml

* Fix default value for bgpPeerDescr

* Fixed Order and Search box

* Added glyphicon for success/error

* Switch to toastr notification

* Removed unused bootstrap code
This commit is contained in:
TheGreatDoc 2018-09-11 05:54:46 +02:00 committed by Tony Murray
parent e367f46fee
commit d475665601
15 changed files with 397 additions and 102 deletions

View File

@ -0,0 +1,53 @@
<?php
/*
* LibreNMS
*
* Copyright (c) 2018 TheGreatDoc
*
* This program is free software: you can redistribute it and/or modify it
* under the terms of the GNU General Public License as published by the
* Free Software Foundation, either version 3 of the License, or (at your
* option) any later version. Please see LICENSE.txt at the top level of
* the source code distribution for details.
*/
use LibreNMS\Authentication\Auth;
header('Content-type: application/json');
if (!Auth::user()->hasGlobalAdmin()) {
$response = array(
'status' => 'error',
'message' => 'Need to be admin',
);
echo _json_encode($response);
exit;
}
$status = 'error';
$message = 'Error updating routing information';
$device_id = $_POST['device_id'];
$routing_id = $_POST['routing_id'];
$data = $_POST['data'];
if (!is_numeric($device_id)) {
$message = 'Missing device id';
} elseif (!is_numeric($routing_id)) {
$message = 'Missing routing id';
} else {
if (dbUpdate(array('bgpPeerDescr'=>$data), 'bgpPeers', '`bgpPeer_id`=? AND `device_id`=?', array($routing_id,$device_id)) >= 0) {
$message = 'Routing information updated';
$status = 'ok';
} else {
$message = 'Could not update Routing information';
}
}
$response = array(
'status' => $status,
'message' => $message,
'extra' => $extra,
);
echo _json_encode($response);

View File

@ -0,0 +1,58 @@
<?php
/*
* LibreNMS
*
* Copyright (c) 2018 TheGreatDoc
*
* This program is free software: you can redistribute it and/or modify it
* under the terms of the GNU General Public License as published by the
* Free Software Foundation, either version 3 of the License, or (at your
* option) any later version. Please see LICENSE.txt at the top level of
* the source code distribution for details.
*/
$device_id = $vars['device_id'];
$sql = " FROM `bgpPeers` AS `B` LEFT JOIN `devices` AS `D` ON `B`.`device_id` = `D`.`device_id` WHERE `D`.`device_id`=?";
$param[] = $device_id;
if (isset($searchPhrase) && !empty($searchPhrase)) {
$sql .= " AND (`D`.`hostname` LIKE '%$searchPhrase%' OR `B`.`bgpPeerRemoteAs` LIKE '%$searchPhrase%' OR `B`.`bgpPeerIdentifier` LIKE '%$searchPhrase%' OR `B`.`bgpPeerDescr` LIKE '%$searchPhrase%')";
}
$count_sql = "SELECT COUNT(`bgpPeer_id`) $sql";
$total = dbFetchCell($count_sql, $param);
if (empty($total)) {
$total = 0;
}
if (!isset($sort) || empty($sort)) {
$sort = '`D`.`hostname`, `B`.`bgpPeerRemoteAs`';
}
$sql .= " ORDER BY $sort";
if (isset($current)) {
$limit_low = ($current * $rowCount) - ($rowCount);
$limit_high = $rowCount;
}
if ($rowCount != -1) {
$sql .= " LIMIT $limit_low,$limit_high";
}
$sql = "SELECT * $sql";
foreach (dbFetchRows($sql, $param) as $routing) {
$response[] = array(
'routing_id' => $routing['bgpPeer_id'],
'hostname' => generate_device_link($routing),
'bgpPeerIdentifier' => $routing['bgpPeerIdentifier'],
'bgpPeerRemoteAs' => $routing['bgpPeerRemoteAs'],
'bgpPeerDescr' => $routing['bgpPeerDescr']);
}
$output = array('current'=>$current,'rowCount'=>$rowCount,'rows'=>$response,'total'=>$total);
echo _json_encode($output);

View File

@ -17,6 +17,10 @@ if (!Auth::user()->hasGlobalAdmin()) {
$panes['ports'] = 'Port Settings';
}
if (dbFetchCell("SELECT COUNT(*) FROM `bgpPeers` WHERE `device_id` = ? LIMIT 1", array($device['device_id'])) > 0) {
$panes['routing'] = 'Routing';
}
if (count($config['os'][$device['os']]['icons'])) {
$panes['icon'] = 'Icon';
}

View File

@ -0,0 +1,76 @@
<?php
/*
* LibreNMS
*
* Copyright (c) 2018 TheGreatDoc
*
* This program is free software: you can redistribute it and/or modify it
* under the terms of the GNU General Public License as published by the
* Free Software Foundation, either version 3 of the License, or (at your
* option) any later version. Please see LICENSE.txt at the top level of
* the source code distribution for details.
*/
?>
<h3>Routing settings</h3>
<div class="table-responsive">
<table id="routing" class="table table-hover table-condensed routing">
<thead>
<tr>
<th data-column-id="hostname">Device</th>
<th data-column-id="bgpPeerIdentifier">Peer address</th>
<th data-column-id="bgpPeerRemoteAs">Remote AS</th>
<th data-column-id="bgpPeerDescr" data-formatter="descr_update" data-header-css-class="edit-routing-input">Description</th>
</tr>
</thead>
</table>
</div>
<script>
var grid = $("#routing").bootgrid({
ajax: true,
rowCount: [50, 100, 250, -1],
post: function ()
{
return {
id: "routing-edit",
device_id: <?php echo $device['device_id']; ?>,
};
},
url: "ajax_table.php",
formatters: {
"descr_update": function(column,row) {
return "<div class='form-group'><input type='text' class='form-control input-sm routing' data-device_id='<?php echo $device['device_id']; ?>' data-routing_id='"+row.routing_id+"' value='"+row.bgpPeerDescr+"'></div>";
}
},
templates: {
}
}).on("loaded.rs.jquery.bootgrid", function() {
grid.find(".routing").blur(function(event) {
event.preventDefault();
var device_id = $(this).data("device_id");
var routing_id = $(this).data("routing_id");
var data = $(this).val();
var $this = $(this);
$.ajax({
type: 'POST',
url: 'ajax_form.php',
data: {type: "routing-update", device_id: device_id, data: data, routing_id: routing_id},
dataType: "json",
success: function (data) {
if (data.status == 'ok') {
toastr.success(data.message);
} else {
toastr.error(data.message);
}
},
error: function () {
toastr.error(data.message);
}
});
});
});
</script>

View File

@ -98,7 +98,7 @@ if ($vars['view'] == 'macaccounting_pkts') {
print_optionbar_end();
echo '<table border="0" cellspacing="0" cellpadding="5" width="100%">';
echo '<tr style="height: 30px"><th>Peer address</th><th>Type</th><th>Family</th><th>Remote AS</th><th>State</th><th>Uptime</th></tr>';
echo '<tr style="height: 30px"><th>Peer address</th><th>Type</th><th>Family</th><th>Remote AS</th><th>Peer description</th><th>State</th><th>Uptime</th></tr>';
$i = '1';
@ -225,6 +225,7 @@ foreach (dbFetchRows("SELECT * FROM `bgpPeers` WHERE `device_id` = ? $extra_sql
<td>$peer_type</td>
<td style='font-size: 10px; font-weight: bold; line-height: 10px;'>".(isset($peer['afi']) ? $peer['afi'] : '').'</td>
<td><strong>AS'.$peer['bgpPeerRemoteAs'].'</strong><br />'.$peer['astext']."</td>
<td>".$peer['bgpPeerDescr']."</td>
<td><strong><span style='color: $admin_col;'>".$peer['bgpPeerAdminStatus']."<span><br /><span style='color: $col;'>".$peer['bgpPeerState'].'</span></strong></td>
<td>'.formatUptime($peer['bgpPeerFsmEstablishedTime'])."<br />
Updates <i class='fa fa-arrow-down icon-theme' aria-hidden='true'></i> ".$peer['bgpPeerInUpdates']."

View File

@ -195,7 +195,7 @@ if (!Auth::user()->hasGlobalRead()) {
print_optionbar_end();
echo "<table border=0 cellspacing=0 cellpadding=5 width=100% class='table sortable'>";
echo '<tr style="height: 30px"><td width=1></td><th>Local address</th><th></th><th>Peer address</th><th>Type</th><th>Family</th><th>Remote AS</th><th>State</th><th width=200>Uptime / Updates</th></tr>';
echo '<tr style="height: 30px"><td width=1></td><th>Local address</th><th></th><th>Peer address</th><th>Type</th><th>Family</th><th>Remote AS</th><th>Peer description</th><th>State</th><th width=200>Uptime / Updates</th></tr>';
if ($vars['type'] == 'external') {
$where = 'AND D.bgpLocalAs != B.bgpPeerRemoteAs';
@ -302,6 +302,7 @@ if (!Auth::user()->hasGlobalRead()) {
<td width=50><b>$peer_type</b></td>
<td width=50>".$peer['afi'].'</td>
<td><strong>AS'.$peer['bgpPeerRemoteAs'].'</strong><br />'.$peer['astext']."</td>
<td>".$peer['bgpPeerDescr']."</td>
<td><strong><span style='color: $admin_col;'>".$peer['bgpPeerAdminStatus']."</span><br /><span style='color: $col;'>".$peer['bgpPeerState'].'</span></strong></td>
<td>'.formatUptime($peer['bgpPeerFsmEstablishedTime'])."<br />
Updates <i class='fa fa-arrow-down icon-theme' aria-hidden='true'></i> ".format_si($peer['bgpPeerInUpdates'])."

View File

@ -192,6 +192,7 @@ bgpPeers:
- { Field: bgpPeerAdminStatus, Type: text, 'Null': false, Extra: '' }
- { Field: bgpLocalAddr, Type: text, 'Null': false, Extra: '' }
- { Field: bgpPeerRemoteAddr, Type: text, 'Null': false, Extra: '' }
- { Field: bgpPeerDescr, Type: varchar(255), 'Null': false, Extra: '', Default: '' }
- { Field: bgpPeerInUpdates, Type: int(11), 'Null': false, Extra: '' }
- { Field: bgpPeerOutUpdates, Type: int(11), 'Null': false, Extra: '' }
- { Field: bgpPeerInTotalMessages, Type: int(11), 'Null': false, Extra: '' }

1
sql-schema/266.sql Normal file
View File

@ -0,0 +1 @@
ALTER TABLE `bgpPeers` ADD `bgpPeerDescr` VARCHAR(255) NOT NULL DEFAULT '' AFTER `bgpPeerRemoteAddr`;

View File

@ -10,6 +10,7 @@
"bgpPeerAdminStatus": "stop",
"bgpLocalAddr": "0.0.0.0",
"bgpPeerRemoteAddr": "0.0.0.0",
"bgpPeerDescr": "",
"bgpPeerInUpdates": 0,
"bgpPeerOutUpdates": 0,
"bgpPeerInTotalMessages": 0,
@ -17,7 +18,7 @@
"bgpPeerFsmEstablishedTime": 0,
"bgpPeerInUpdateElapsedTime": 0,
"context_name": "",
"bgpLocalAs": "65000"
"bgpLocalAs": 65000
},
{
"astext": "",
@ -27,6 +28,7 @@
"bgpPeerAdminStatus": "stop",
"bgpLocalAddr": "0.0.0.0",
"bgpPeerRemoteAddr": "0.0.0.0",
"bgpPeerDescr": "",
"bgpPeerInUpdates": 0,
"bgpPeerOutUpdates": 0,
"bgpPeerInTotalMessages": 0,
@ -34,7 +36,7 @@
"bgpPeerFsmEstablishedTime": 0,
"bgpPeerInUpdateElapsedTime": 0,
"context_name": "",
"bgpLocalAs": "65000"
"bgpLocalAs": 65000
}
],
"bgpPeers_cbgp": [
@ -98,6 +100,7 @@
"bgpPeerAdminStatus": "running",
"bgpLocalAddr": "192.168.0.1",
"bgpPeerRemoteAddr": "0.0.0.0",
"bgpPeerDescr": "",
"bgpPeerInUpdates": 13362513,
"bgpPeerOutUpdates": 13579799,
"bgpPeerInTotalMessages": 13579799,
@ -105,7 +108,7 @@
"bgpPeerFsmEstablishedTime": 13090321,
"bgpPeerInUpdateElapsedTime": 4,
"context_name": "",
"bgpLocalAs": "65000"
"bgpLocalAs": 65000
},
{
"astext": "",
@ -115,6 +118,7 @@
"bgpPeerAdminStatus": "running",
"bgpLocalAddr": "2001:0550:0002:002f:0000:0000:0033:0002",
"bgpPeerRemoteAddr": "0.0.0.0",
"bgpPeerDescr": "",
"bgpPeerInUpdates": 12658044,
"bgpPeerOutUpdates": 118,
"bgpPeerInTotalMessages": 12658183,
@ -122,7 +126,7 @@
"bgpPeerFsmEstablishedTime": 1551697,
"bgpPeerInUpdateElapsedTime": 17,
"context_name": "",
"bgpLocalAs": "65000"
"bgpLocalAs": 65000
}
],
"bgpPeers_cbgp": [

View File

@ -10,6 +10,7 @@
"bgpPeerAdminStatus": "stop",
"bgpLocalAddr": "0.0.0.0",
"bgpPeerRemoteAddr": "0.0.0.0",
"bgpPeerDescr": "",
"bgpPeerInUpdates": 0,
"bgpPeerOutUpdates": 0,
"bgpPeerInTotalMessages": 0,
@ -17,7 +18,7 @@
"bgpPeerFsmEstablishedTime": 0,
"bgpPeerInUpdateElapsedTime": 0,
"context_name": "",
"bgpLocalAs": "65504"
"bgpLocalAs": 65504
},
{
"astext": "",
@ -27,6 +28,7 @@
"bgpPeerAdminStatus": "stop",
"bgpLocalAddr": "0.0.0.0",
"bgpPeerRemoteAddr": "0.0.0.0",
"bgpPeerDescr": "",
"bgpPeerInUpdates": 0,
"bgpPeerOutUpdates": 0,
"bgpPeerInTotalMessages": 0,
@ -34,7 +36,7 @@
"bgpPeerFsmEstablishedTime": 0,
"bgpPeerInUpdateElapsedTime": 0,
"context_name": "",
"bgpLocalAs": "65504"
"bgpLocalAs": 65504
}
],
"bgpPeers_cbgp": []
@ -49,6 +51,7 @@
"bgpPeerAdminStatus": "start",
"bgpLocalAddr": "192.168.3.51",
"bgpPeerRemoteAddr": "0.0.0.0",
"bgpPeerDescr": "",
"bgpPeerInUpdates": 1,
"bgpPeerOutUpdates": 6,
"bgpPeerInTotalMessages": 4875,
@ -56,7 +59,7 @@
"bgpPeerFsmEstablishedTime": 259280,
"bgpPeerInUpdateElapsedTime": 259280,
"context_name": "",
"bgpLocalAs": "65504"
"bgpLocalAs": 65504
},
{
"astext": "",
@ -66,6 +69,7 @@
"bgpPeerAdminStatus": "start",
"bgpLocalAddr": "192.168.2.58",
"bgpPeerRemoteAddr": "0.0.0.0",
"bgpPeerDescr": "",
"bgpPeerInUpdates": 1,
"bgpPeerOutUpdates": 87,
"bgpPeerInTotalMessages": 423531,
@ -73,7 +77,7 @@
"bgpPeerFsmEstablishedTime": 22497219,
"bgpPeerInUpdateElapsedTime": 22497219,
"context_name": "",
"bgpLocalAs": "65504"
"bgpLocalAs": 65504
}
],
"bgpPeers_cbgp": []

View File

@ -10,6 +10,7 @@
"bgpPeerAdminStatus": "stop",
"bgpLocalAddr": "0.0.0.0",
"bgpPeerRemoteAddr": "0.0.0.0",
"bgpPeerDescr": "",
"bgpPeerInUpdates": 0,
"bgpPeerOutUpdates": 0,
"bgpPeerInTotalMessages": 0,
@ -17,7 +18,7 @@
"bgpPeerFsmEstablishedTime": 0,
"bgpPeerInUpdateElapsedTime": 0,
"context_name": "",
"bgpLocalAs": "64513"
"bgpLocalAs": 64513
},
{
"astext": "",
@ -27,6 +28,7 @@
"bgpPeerAdminStatus": "stop",
"bgpLocalAddr": "0.0.0.0",
"bgpPeerRemoteAddr": "0.0.0.0",
"bgpPeerDescr": "",
"bgpPeerInUpdates": 0,
"bgpPeerOutUpdates": 0,
"bgpPeerInTotalMessages": 0,
@ -34,7 +36,7 @@
"bgpPeerFsmEstablishedTime": 0,
"bgpPeerInUpdateElapsedTime": 0,
"context_name": "",
"bgpLocalAs": "64513"
"bgpLocalAs": 64513
}
],
"bgpPeers_cbgp": [
@ -146,6 +148,7 @@
"bgpPeerAdminStatus": "start",
"bgpLocalAddr": "192.168.99.21",
"bgpPeerRemoteAddr": "0.0.0.0",
"bgpPeerDescr": "",
"bgpPeerInUpdates": 5,
"bgpPeerOutUpdates": 4,
"bgpPeerInTotalMessages": 100,
@ -153,7 +156,7 @@
"bgpPeerFsmEstablishedTime": 893,
"bgpPeerInUpdateElapsedTime": 0,
"context_name": "",
"bgpLocalAs": "64513"
"bgpLocalAs": 64513
},
{
"astext": "",
@ -163,6 +166,7 @@
"bgpPeerAdminStatus": "start",
"bgpLocalAddr": "192.168.99.21",
"bgpPeerRemoteAddr": "0.0.0.0",
"bgpPeerDescr": "",
"bgpPeerInUpdates": 8,
"bgpPeerOutUpdates": 4,
"bgpPeerInTotalMessages": 19,
@ -170,7 +174,7 @@
"bgpPeerFsmEstablishedTime": 467,
"bgpPeerInUpdateElapsedTime": 0,
"context_name": "",
"bgpLocalAs": "64513"
"bgpLocalAs": 64513
}
],
"bgpPeers_cbgp": [

View File

@ -10,6 +10,7 @@
"bgpPeerAdminStatus": "stop",
"bgpLocalAddr": "0.0.0.0",
"bgpPeerRemoteAddr": "0.0.0.0",
"bgpPeerDescr": "",
"bgpPeerInUpdates": 0,
"bgpPeerOutUpdates": 0,
"bgpPeerInTotalMessages": 0,
@ -17,7 +18,7 @@
"bgpPeerFsmEstablishedTime": 0,
"bgpPeerInUpdateElapsedTime": 0,
"context_name": "",
"bgpLocalAs": "65031"
"bgpLocalAs": 65031
},
{
"astext": "",
@ -27,6 +28,7 @@
"bgpPeerAdminStatus": "stop",
"bgpLocalAddr": "0.0.0.0",
"bgpPeerRemoteAddr": "0.0.0.0",
"bgpPeerDescr": "",
"bgpPeerInUpdates": 0,
"bgpPeerOutUpdates": 0,
"bgpPeerInTotalMessages": 0,
@ -34,7 +36,7 @@
"bgpPeerFsmEstablishedTime": 0,
"bgpPeerInUpdateElapsedTime": 0,
"context_name": "",
"bgpLocalAs": "65031"
"bgpLocalAs": 65031
},
{
"astext": "",
@ -44,6 +46,7 @@
"bgpPeerAdminStatus": "stop",
"bgpLocalAddr": "0.0.0.0",
"bgpPeerRemoteAddr": "0.0.0.0",
"bgpPeerDescr": "",
"bgpPeerInUpdates": 0,
"bgpPeerOutUpdates": 0,
"bgpPeerInTotalMessages": 0,
@ -51,7 +54,7 @@
"bgpPeerFsmEstablishedTime": 0,
"bgpPeerInUpdateElapsedTime": 0,
"context_name": "",
"bgpLocalAs": "65031"
"bgpLocalAs": 65031
},
{
"astext": "",
@ -61,6 +64,7 @@
"bgpPeerAdminStatus": "stop",
"bgpLocalAddr": "0.0.0.0",
"bgpPeerRemoteAddr": "0.0.0.0",
"bgpPeerDescr": "",
"bgpPeerInUpdates": 0,
"bgpPeerOutUpdates": 0,
"bgpPeerInTotalMessages": 0,
@ -68,7 +72,7 @@
"bgpPeerFsmEstablishedTime": 0,
"bgpPeerInUpdateElapsedTime": 0,
"context_name": "",
"bgpLocalAs": "65031"
"bgpLocalAs": 65031
}
],
"bgpPeers_cbgp": [
@ -180,6 +184,7 @@
"bgpPeerAdminStatus": "start",
"bgpLocalAddr": "10.44.32.14",
"bgpPeerRemoteAddr": "0.0.0.0",
"bgpPeerDescr": "",
"bgpPeerInUpdates": 1,
"bgpPeerOutUpdates": 4,
"bgpPeerInTotalMessages": 302,
@ -187,7 +192,7 @@
"bgpPeerFsmEstablishedTime": 8497,
"bgpPeerInUpdateElapsedTime": 8491,
"context_name": "",
"bgpLocalAs": "65031"
"bgpLocalAs": 65031
},
{
"astext": "",
@ -197,6 +202,7 @@
"bgpPeerAdminStatus": "start",
"bgpLocalAddr": "10.45.63.162",
"bgpPeerRemoteAddr": "0.0.0.0",
"bgpPeerDescr": "",
"bgpPeerInUpdates": 1,
"bgpPeerOutUpdates": 4,
"bgpPeerInTotalMessages": 303,
@ -204,7 +210,7 @@
"bgpPeerFsmEstablishedTime": 8492,
"bgpPeerInUpdateElapsedTime": 8491,
"context_name": "",
"bgpLocalAs": "65031"
"bgpLocalAs": 65031
},
{
"astext": "",
@ -214,6 +220,7 @@
"bgpPeerAdminStatus": "start",
"bgpLocalAddr": "2001:0db8:85a3:0000:341a:8a2e:03e1:000e",
"bgpPeerRemoteAddr": "0.0.0.0",
"bgpPeerDescr": "",
"bgpPeerInUpdates": 1,
"bgpPeerOutUpdates": 3,
"bgpPeerInTotalMessages": 302,
@ -221,7 +228,7 @@
"bgpPeerFsmEstablishedTime": 8487,
"bgpPeerInUpdateElapsedTime": 8486,
"context_name": "",
"bgpLocalAs": "65031"
"bgpLocalAs": 65031
},
{
"astext": "",
@ -231,6 +238,7 @@
"bgpPeerAdminStatus": "start",
"bgpLocalAddr": "2001:0db8:85a3:0000:341a:8a2e:03e2:00a2",
"bgpPeerRemoteAddr": "0.0.0.0",
"bgpPeerDescr": "",
"bgpPeerInUpdates": 1,
"bgpPeerOutUpdates": 3,
"bgpPeerInTotalMessages": 303,
@ -238,7 +246,7 @@
"bgpPeerFsmEstablishedTime": 8487,
"bgpPeerInUpdateElapsedTime": 8486,
"context_name": "",
"bgpLocalAs": "65031"
"bgpLocalAs": 65031
}
],
"bgpPeers_cbgp": [

File diff suppressed because it is too large Load Diff

View File

@ -10,6 +10,7 @@
"bgpPeerAdminStatus": "stop",
"bgpLocalAddr": "0.0.0.0",
"bgpPeerRemoteAddr": "0.0.0.0",
"bgpPeerDescr": "",
"bgpPeerInUpdates": 0,
"bgpPeerOutUpdates": 0,
"bgpPeerInTotalMessages": 0,
@ -17,7 +18,7 @@
"bgpPeerFsmEstablishedTime": 0,
"bgpPeerInUpdateElapsedTime": 0,
"context_name": "",
"bgpLocalAs": "65501"
"bgpLocalAs": 65501
},
{
"astext": "",
@ -27,6 +28,7 @@
"bgpPeerAdminStatus": "stop",
"bgpLocalAddr": "0.0.0.0",
"bgpPeerRemoteAddr": "0.0.0.0",
"bgpPeerDescr": "",
"bgpPeerInUpdates": 0,
"bgpPeerOutUpdates": 0,
"bgpPeerInTotalMessages": 0,
@ -34,7 +36,7 @@
"bgpPeerFsmEstablishedTime": 0,
"bgpPeerInUpdateElapsedTime": 0,
"context_name": "",
"bgpLocalAs": "65501"
"bgpLocalAs": 65501
},
{
"astext": "",
@ -44,6 +46,7 @@
"bgpPeerAdminStatus": "stop",
"bgpLocalAddr": "0.0.0.0",
"bgpPeerRemoteAddr": "0.0.0.0",
"bgpPeerDescr": "",
"bgpPeerInUpdates": 0,
"bgpPeerOutUpdates": 0,
"bgpPeerInTotalMessages": 0,
@ -51,7 +54,7 @@
"bgpPeerFsmEstablishedTime": 0,
"bgpPeerInUpdateElapsedTime": 0,
"context_name": "",
"bgpLocalAs": "65501"
"bgpLocalAs": 65501
}
],
"bgpPeers_cbgp": []
@ -66,6 +69,7 @@
"bgpPeerAdminStatus": "start",
"bgpLocalAddr": "192.168.1.43",
"bgpPeerRemoteAddr": "0.0.0.0",
"bgpPeerDescr": "",
"bgpPeerInUpdates": 10526,
"bgpPeerOutUpdates": 531,
"bgpPeerInTotalMessages": 824076,
@ -73,7 +77,7 @@
"bgpPeerFsmEstablishedTime": 23675506,
"bgpPeerInUpdateElapsedTime": 21748,
"context_name": "",
"bgpLocalAs": "65501"
"bgpLocalAs": 65501
},
{
"astext": "",
@ -83,6 +87,7 @@
"bgpPeerAdminStatus": "start",
"bgpLocalAddr": "192.168.1.185",
"bgpPeerRemoteAddr": "0.0.0.0",
"bgpPeerDescr": "",
"bgpPeerInUpdates": 1,
"bgpPeerOutUpdates": 1,
"bgpPeerInTotalMessages": 29928,
@ -90,7 +95,7 @@
"bgpPeerFsmEstablishedTime": 785386,
"bgpPeerInUpdateElapsedTime": 785386,
"context_name": "",
"bgpLocalAs": "65501"
"bgpLocalAs": 65501
},
{
"astext": "",
@ -100,6 +105,7 @@
"bgpPeerAdminStatus": "start",
"bgpLocalAddr": "192.168.1.225",
"bgpPeerRemoteAddr": "0.0.0.0",
"bgpPeerDescr": "",
"bgpPeerInUpdates": 3,
"bgpPeerOutUpdates": 1,
"bgpPeerInTotalMessages": 25802,
@ -107,7 +113,7 @@
"bgpPeerFsmEstablishedTime": 774041,
"bgpPeerInUpdateElapsedTime": 774040,
"context_name": "",
"bgpLocalAs": "65501"
"bgpLocalAs": 65501
}
],
"bgpPeers_cbgp": []

View File

@ -10,6 +10,7 @@
"bgpPeerAdminStatus": "stop",
"bgpLocalAddr": "0.0.0.0",
"bgpPeerRemoteAddr": "0.0.0.0",
"bgpPeerDescr": "",
"bgpPeerInUpdates": 0,
"bgpPeerOutUpdates": 0,
"bgpPeerInTotalMessages": 0,
@ -17,7 +18,7 @@
"bgpPeerFsmEstablishedTime": 0,
"bgpPeerInUpdateElapsedTime": 0,
"context_name": "",
"bgpLocalAs": "64513"
"bgpLocalAs": 64513
},
{
"astext": "",
@ -27,6 +28,7 @@
"bgpPeerAdminStatus": "stop",
"bgpLocalAddr": "0.0.0.0",
"bgpPeerRemoteAddr": "0.0.0.0",
"bgpPeerDescr": "",
"bgpPeerInUpdates": 0,
"bgpPeerOutUpdates": 0,
"bgpPeerInTotalMessages": 0,
@ -34,7 +36,7 @@
"bgpPeerFsmEstablishedTime": 0,
"bgpPeerInUpdateElapsedTime": 0,
"context_name": "",
"bgpLocalAs": "64513"
"bgpLocalAs": 64513
},
{
"astext": "",
@ -44,6 +46,7 @@
"bgpPeerAdminStatus": "stop",
"bgpLocalAddr": "0.0.0.0",
"bgpPeerRemoteAddr": "0.0.0.0",
"bgpPeerDescr": "",
"bgpPeerInUpdates": 0,
"bgpPeerOutUpdates": 0,
"bgpPeerInTotalMessages": 0,
@ -51,7 +54,7 @@
"bgpPeerFsmEstablishedTime": 0,
"bgpPeerInUpdateElapsedTime": 0,
"context_name": "",
"bgpLocalAs": "64513"
"bgpLocalAs": 64513
}
],
"bgpPeers_cbgp": [
@ -283,6 +286,7 @@
"bgpPeerAdminStatus": "running",
"bgpLocalAddr": "192.168.99.24",
"bgpPeerRemoteAddr": "0.0.0.0",
"bgpPeerDescr": "",
"bgpPeerInUpdates": 56,
"bgpPeerOutUpdates": 1,
"bgpPeerInTotalMessages": 13199,
@ -290,7 +294,7 @@
"bgpPeerFsmEstablishedTime": 361781,
"bgpPeerInUpdateElapsedTime": 0,
"context_name": "",
"bgpLocalAs": "64513"
"bgpLocalAs": 64513
},
{
"astext": "",
@ -300,6 +304,7 @@
"bgpPeerAdminStatus": "running",
"bgpLocalAddr": "192.168.99.24",
"bgpPeerRemoteAddr": "0.0.0.0",
"bgpPeerDescr": "",
"bgpPeerInUpdates": 6,
"bgpPeerOutUpdates": 0,
"bgpPeerInTotalMessages": 14583,
@ -307,7 +312,7 @@
"bgpPeerFsmEstablishedTime": 437296,
"bgpPeerInUpdateElapsedTime": 0,
"context_name": "",
"bgpLocalAs": "64513"
"bgpLocalAs": 64513
},
{
"astext": "",
@ -317,6 +322,7 @@
"bgpPeerAdminStatus": "running",
"bgpLocalAddr": "fd00:0028:0001:0001:0000:0000:0001:0004",
"bgpPeerRemoteAddr": "0.0.0.0",
"bgpPeerDescr": "",
"bgpPeerInUpdates": 0,
"bgpPeerOutUpdates": 0,
"bgpPeerInTotalMessages": 0,
@ -324,7 +330,7 @@
"bgpPeerFsmEstablishedTime": 633976,
"bgpPeerInUpdateElapsedTime": 0,
"context_name": "",
"bgpLocalAs": "64513"
"bgpLocalAs": 64513
}
],
"bgpPeers_cbgp": [