peers

[Source]

The peers command returns a list of all other rippled servers currently connected to this one over the Peer Protocol, including information on their connection and sync status.

The peers method is an admin method that cannot be run by unprivileged users!

Request Format

An example of the request format:

{
    "id": 2,
    "command": "peers"
}
rippled peers

The request includes no additional parameters.

Response Format

An example of a successful response:

{
  "id": "peers_example",
  "result": {
    "cluster": {},
    "peers": [
      {
        "address": "5.189.239.203:51235",
        "complete_ledgers": "51813132 - 51815132",
        "ledger": "99A1E29C9F235DCCBB087F85F11756BECA606A756C22AB826AB1F319C470C3E3",
        "load": 157,
        "metrics": {
          "avg_bps_recv": "10255",
          "avg_bps_sent": "2015",
          "total_bytes_recv": "356809",
          "total_bytes_sent": "74208"
        },
        "public_key": "n94ht2A9aBoARRhk1rwypZNVXJDiMN4qzs1Bd5KsQaSnN3WVy8Tw",
        "uptime": 2,
        "version": "rippled-1.4.0"
      },
      {
        "address": "[::ffff:50.22.123.222]:51235",
        "complete_ledgers": "32570 - 51815131",
        "ledger": "99A1E29C9F235DCCBB087F85F11756BECA606A756C22AB826AB1F319C470C3E3",
        "load": 219,
        "metrics": {
          "avg_bps_recv": "7223",
          "avg_bps_sent": "6742",
          "total_bytes_recv": "593148",
          "total_bytes_sent": "204540"
        },
        "public_key": "n9LbkoB9ReSbaA9SGL317fm6CvjLcFG8hGoierLYfwiCDsEXHcP3",
        "uptime": 3,
        "version": "rippled-1.3.1"
      },
      {
        "address": "51.89.153.154:51235",
        "complete_ledgers": "51814130 - 51815130",
        "ledger": "808800914218F5622ED5F639BC0EEDF9530E47C6F81CD1EB3866FA1496F62B9C",
        "load": 27,
        "metrics": {
          "avg_bps_recv": "172748",
          "avg_bps_sent": "7355",
          "total_bytes_recv": "5455031",
          "total_bytes_sent": "234276"
        },
        "public_key": "n944vHEtDhPm4Bd9rPowZMJduR9XrpxKS9AKHFfcJtKRVAdhfFfD",
        "uptime": 8,
        "version": "rippled-1.4.0"
      },
      {
        "address": "192.151.157.20:51235",
        "complete_ledgers": "51813128 - 51815128",
        "latency": 8000,
        "load": 70,
        "metrics": {
          "avg_bps_recv": "463258",
          "avg_bps_sent": "21954",
          "total_bytes_recv": "13910029",
          "total_bytes_sent": "678908"
        },
        "public_key": "n9JbUWaFZDi1UxFexJXf1D9dRpn8UK6pTNwRxBCjEvLEwQa384uP",
        "uptime": 19,
        "version": "rippled-1.3.1"
      },
      {
        "address": "[::ffff:94.237.45.66]:51235",
        "complete_ledgers": "51815004 - 51815131",
        "ledger": "99A1E29C9F235DCCBB087F85F11756BECA606A756C22AB826AB1F319C470C3E3",
        "load": 202,
        "metrics": {
          "avg_bps_recv": "18258",
          "avg_bps_sent": "1903",
          "total_bytes_recv": "1184272",
          "total_bytes_sent": "65101"
        },
        "public_key": "n9Lg83FYh8YDivG9TcgXhq5Y3PwunmRqVfvibd19Ko9uu3DtqLBM",
        "uptime": 2,
        "version": "rippled-1.3.1"
      },
      {
        "address": "[::ffff:149.56.21.37]:51235",
        "complete_ledgers": "51478129 - 51815129",
        "ledger": "462FA0B34723C12EBE4DC9974B397D6A21D4F1770DE3CD584D4E33DBC83FC247",
        "load": 182,
        "metrics": {
          "avg_bps_recv": "132648",
          "avg_bps_sent": "13935",
          "total_bytes_recv": "3983628",
          "total_bytes_sent": "433757"
        },
        "public_key": "n94Dutms7xoSgWjbjYftDJGXvc5jaeYZq3J7o1Jwo35dZAyuzNWT",
        "uptime": 14,
        "version": "rippled-1.3.1"
      },
      {
        "address": "77.117.40.191:51235",
        "complete_ledgers": "51812267 - 51815071",
        "latency": 30555,
        "ledger": "0562C7A1898196FDC60B8DB1838961BFBA6B9304B1510E6030B32A4FB38400FB",
        "load": 3783,
        "metrics": {
          "avg_bps_recv": "495673",
          "avg_bps_sent": "57527",
          "total_bytes_recv": "17137378",
          "total_bytes_sent": "4140188"
        },
        "public_key": "n9LELaTdzKwfzhvHZKKrD3ZEJtWABSg4ocAT4dz5Vg5JgAVGwVdd",
        "uptime": 73,
        "version": "rippled-1.4.0"
      },
      {
        "address": "[::ffff:94.237.49.50]:51235",
        "complete_ledgers": "51815002 - 51815130",
        "latency": 8000,
        "ledger": "C6030B52471F8076F88A90C6FC2B2998794B32023FAC69FF573437D6D1470961",
        "load": 1563,
        "metrics": {
          "avg_bps_recv": "215539",
          "avg_bps_sent": "25705",
          "total_bytes_recv": "23134383",
          "total_bytes_sent": "2738880"
        },
        "public_key": "n9MLzBWq7WNM2sdpRKY2Tr3EJfxwSwsnDEpxU3auGJHgvq3Bit6S",
        "uptime": 112,
        "version": "rippled-1.3.1"
      }
    ]
  },
  "status": "success",
  "type": "response"
}
{
   "result" : {
      "cluster" : {},
      "peers" : [
         {
            "address" : "50.22.123.222:51235",
            "complete_ledgers" : "32570 - 51815097",
            "ledger" : "223DB74FE021AB1A4AA9E1CC588E0DBCC3FC7C080B93C01C30C246D89F951EA2",
            "load" : 7,
            "metrics" : {
               "avg_bps_recv" : "1152",
               "avg_bps_sent" : "332",
               "total_bytes_recv" : "96601",
               "total_bytes_sent" : "45322"
            },
            "public_key" : "n9LbkoB9ReSbaA9SGL317fm6CvjLcFG8hGoierLYfwiCDsEXHcP3",
            "uptime" : 1,
            "version" : "rippled-1.3.1"
         },
         {
            "address" : "212.83.147.67:51235",
            "complete_ledgers" : "51815014 - 51815040",
            "ledger" : "223DB74FE021AB1A4AA9E1CC588E0DBCC3FC7C080B93C01C30C246D89F951EA2",
            "load" : 1,
            "metrics" : {
               "avg_bps_recv" : "0",
               "avg_bps_sent" : "1490",
               "total_bytes_recv" : "18348",
               "total_bytes_sent" : "46013"
            },
            "public_key" : "n94s5V53w1g4HdEdHdUU1FVrqHTVDbcb7bt44ib9JcM3c281LoDr",
            "sanity" : "unknown",
            "uptime" : 2,
            "version" : "rippled-1.3.1"
         },
         {
            "address" : "158.69.24.50:51235",
            "complete_ledgers" : "51478098 - 51815098",
            "ledger" : "223DB74FE021AB1A4AA9E1CC588E0DBCC3FC7C080B93C01C30C246D89F951EA2",
            "load" : 55,
            "metrics" : {
               "avg_bps_recv" : "88080",
               "avg_bps_sent" : "2703",
               "total_bytes_recv" : "2786780",
               "total_bytes_sent" : "89368"
            },
            "public_key" : "n9KfEhmmdxmjJdpbpRHGJ9ezoNzdyUepA11cT71jmq1fMDsZAcSh",
            "uptime" : 3,
            "version" : "rippled-1.3.1"
         },
         {
            "address" : "[::ffff:174.64.99.193]:51235",
            "complete_ledgers" : "51813091 - 51815091",
            "latency" : 16000,
            "ledger" : "CF72319DC762355C92BDD29E4CE066CEB03FF2A077A511D586B9FD7B74F55D94",
            "load" : 325,
            "metrics" : {
               "avg_bps_recv" : "19012",
               "avg_bps_sent" : "52053",
               "total_bytes_recv" : "586809",
               "total_bytes_sent" : "1678192"
            },
            "public_key" : "n9MH4Xu8FYPPoUFs679NQp7F6epFznM7x6bF4sAJWQvKkPBUHgd3",
            "uptime" : 26,
            "version" : "rippled-1.4.0-b8"
         },
         {
            "address" : "[::ffff:94.237.45.66]:51235",
            "complete_ledgers" : "51814966 - 51815093",
            "latency" : 8773,
            "ledger" : "61CF015A709122917B001367EE81E5E0D56E485A0BCAB53785A1CB830E0F9589",
            "load" : 3522,
            "metrics" : {
               "avg_bps_recv" : "368875",
               "avg_bps_sent" : "59308",
               "total_bytes_recv" : "11558753",
               "total_bytes_sent" : "2257872"
            },
            "public_key" : "n9Lg83FYh8YDivG9TcgXhq5Y3PwunmRqVfvibd19Ko9uu3DtqLBM",
            "uptime" : 37,
            "version" : "rippled-1.3.1"
         }
      ],
      "status" : "success"
   }
}

Loading: "/etc/rippled.cfg"
Connecting to 127.0.0.1:5005
{
   "result" : {
      "cluster" : {},
      "peers" : [
         {
            "address" : "50.22.123.222:51235",
            "complete_ledgers" : "32570 - 51815097",
            "ledger" : "223DB74FE021AB1A4AA9E1CC588E0DBCC3FC7C080B93C01C30C246D89F951EA2",
            "load" : 7,
            "metrics" : {
               "avg_bps_recv" : "1152",
               "avg_bps_sent" : "332",
               "total_bytes_recv" : "96601",
               "total_bytes_sent" : "45322"
            },
            "public_key" : "n9LbkoB9ReSbaA9SGL317fm6CvjLcFG8hGoierLYfwiCDsEXHcP3",
            "uptime" : 1,
            "version" : "rippled-1.3.1"
         },
         {
            "address" : "212.83.147.67:51235",
            "complete_ledgers" : "51815014 - 51815040",
            "ledger" : "223DB74FE021AB1A4AA9E1CC588E0DBCC3FC7C080B93C01C30C246D89F951EA2",
            "load" : 1,
            "metrics" : {
               "avg_bps_recv" : "0",
               "avg_bps_sent" : "1490",
               "total_bytes_recv" : "18348",
               "total_bytes_sent" : "46013"
            },
            "public_key" : "n94s5V53w1g4HdEdHdUU1FVrqHTVDbcb7bt44ib9JcM3c281LoDr",
            "sanity" : "unknown",
            "uptime" : 2,
            "version" : "rippled-1.3.1"
         },
         {
            "address" : "158.69.24.50:51235",
            "complete_ledgers" : "51478098 - 51815098",
            "ledger" : "223DB74FE021AB1A4AA9E1CC588E0DBCC3FC7C080B93C01C30C246D89F951EA2",
            "load" : 55,
            "metrics" : {
               "avg_bps_recv" : "88080",
               "avg_bps_sent" : "2703",
               "total_bytes_recv" : "2786780",
               "total_bytes_sent" : "89368"
            },
            "public_key" : "n9KfEhmmdxmjJdpbpRHGJ9ezoNzdyUepA11cT71jmq1fMDsZAcSh",
            "uptime" : 3,
            "version" : "rippled-1.3.1"
         },
         {
            "address" : "[::ffff:174.64.99.193]:51235",
            "complete_ledgers" : "51813091 - 51815091",
            "latency" : 16000,
            "ledger" : "CF72319DC762355C92BDD29E4CE066CEB03FF2A077A511D586B9FD7B74F55D94",
            "load" : 325,
            "metrics" : {
               "avg_bps_recv" : "19012",
               "avg_bps_sent" : "52053",
               "total_bytes_recv" : "586809",
               "total_bytes_sent" : "1678192"
            },
            "public_key" : "n9MH4Xu8FYPPoUFs679NQp7F6epFznM7x6bF4sAJWQvKkPBUHgd3",
            "uptime" : 26,
            "version" : "rippled-1.4.0-b8"
         },
         {
            "address" : "[::ffff:94.237.45.66]:51235",
            "complete_ledgers" : "51814966 - 51815093",
            "latency" : 8773,
            "ledger" : "61CF015A709122917B001367EE81E5E0D56E485A0BCAB53785A1CB830E0F9589",
            "load" : 3522,
            "metrics" : {
               "avg_bps_recv" : "368875",
               "avg_bps_sent" : "59308",
               "total_bytes_recv" : "11558753",
               "total_bytes_sent" : "2257872"
            },
            "public_key" : "n9Lg83FYh8YDivG9TcgXhq5Y3PwunmRqVfvibd19Ko9uu3DtqLBM",
            "uptime" : 37,
            "version" : "rippled-1.3.1"
         }
      ],
      "status" : "success"
   }
}

The response follows the standard format, with a successful result containing a JSON object with the following fields:

Field Type Description
cluster Object Summary of other rippled servers in the same cluster, if configured as a cluster. New in: rippled 0.30.1
peers Array Array of peer objects.

Each field of the cluster object is the public key of that rippled server's identifying key pair. (This is the same value that that server returns as pubkey_node in the server_info method.) The contents of that field are an object with the following fields:

Field Type Description
tag String The display name for this cluster member as defined in the config file.
fee Number (May be omitted) The load multiplier this cluster member is applying to the transaction cost
age Number The number of seconds since the last cluster report from this cluster member.

Each member of the peers array is a peer object with the following fields:

Field Type Description
address String The IP address and port where this peer is connected
cluster Boolean (May be omitted) If true, the current server and the peer server are part of the same rippled cluster.
name String (May be omitted) If the peer is part of the same cluster, this is the display name for that server as defined in the config file.
complete_ledgers String Range expression indicating the ledger indexes of the ledger versions the peer rippled server has available
inbound Boolean (May be omitted) If true, the peer is connecting to the local server.
latency Number The network latency to the peer (in milliseconds)
ledger String The identifying hash of the peer's most recently closed ledger
load Number A measure of the amount of load the peer server is putting on the local server. Larger numbers indicate more load. (The units by which load is measured are not formally defined.)
protocol String (May be omitted) The protocol version that the peer is using, if not the same as the local server.
metrics Object Details on the amount of data sent to and received from this peer. See the description of the metrics object below for details. New in: rippled 1.4.0
public_key String (May be omitted) A public key that can be used to verify the integrity of the peer's messages. This is not the same key that is used for validations, but it follows the same format.
sanity String (May be omitted) Whether this peer is following the same rules and ledger history as the current server. A value of insane probably indicates that the peer is part of a parallel network. The value unknown indicates that the current server is unsure whether the peer is compatible.
status String (May be omitted) The most recent status message from the peer. Could be connecting, connected, monitoring, validating, or shutting.
uptime Number The number of seconds that your rippled server has been continuously connected to this peer. New in: rippled 0.30.1
version string (May be omitted) The rippled version number of the peer server

The metrics object contains the following fields:

Field Type Description
avg_bps_recv String The average bytes per second of data received from this peer.
avg_bps_sent String The average bytes per second of data sent to this peer.
total_bytes_recv String The total number of bytes of data received from this peer.
total_bytes_sent String The total number of bytes of data sent to this peer.

Note: All of the fields in the metrics object are 64-bit unsigned integers serialized to string format so that they do not lose precision in JSON encoding/decoding.

Possible Errors