ARP : ARP table management
This module provides ARP conversion table operation.
User can use the following code to import the arp module.
var arp = require('router/arp');
Support
The following shows arp module APIs available for each permissions.
| User Mode | Privilege Mode | |
|---|---|---|
| arp.add | ● | |
| arp.delete | ● | |
| arp.request | ● | |
| arp.get | ● | ● |
ARP Object
arp.add(ifname, ipaddr, mac[, static[, strict]])
ifname{String} Ethernet network interface name.ipaddr{String} IP address.mac{String} MAC address in the format:'x:x:x:x:x:x'static{Boolean} Whether to add as a permanent static transformation. default: true.strict{Boolean} Whether to bind the unique IP address of this MAC address, valid whenstaticistrue. default: false.- Returns: {Boolean} Whether the operation was successful.
Add an ARP translation entry manually.
Example
arp.add('en1', '192.168.1.2', '00:22:33:44:55:66');
arp.delete(ipaddr[, ifname[, force]])
ipaddr{String} Need to delete IP address mapping ARP relationship.ifname{String} Ethernet network interface name. default: check all ethernet interface.force{Boolean} Whether to force deletion of dynamic ARP records. default: false- Returns: {Boolean} Whether the operation was successful.
Delete the ARP mapping of the specified IP address.
Example
arp.delete('192.168.1.2');
arp.delete('0.0.0.0'); // Delete all ARP records.
arp.delete('0.0.0.0', 'en1'); // Delete 'en1' network interface all ARP records.
arp.request(ifname, ipaddr)
ifname{String} Ethernet network interface name.ipaddr{String | Array} The requested IP address.
Send an ARP query request to the specified IP address.
Example
arp.request('en1', '192.168.1.2');
arp.request('en1', ['192.168.1.2', '192.168.1.3']);
arp.get([ifname])
ifname{String | Array} Ethernet network interface name. default: get all ethernet interface.- Returns: {Array} Obtained ARP mapping array.
Get ARP mapping table. If no network interface is specified, get all ARP mappings.
Each array member is an object, this object contains the following properties:
ifname{String} This mapping network interface.ipaddr{String} This mapping IP address.mac{String} This mapping MAC address.static{Boolean} Whether this mapping is static.strict{Boolean} Whether to bind the unique IP address of this MAC address.
Example
var arps = arp.get(); // All
var arps = arp.get('en1'); // Interface en1
var arps = arp.get(['en1', 'en2']); // Interface en1 en2
for (var i = 0; i < arps.length, i++) {
console.log(arps[i].ipaddr);
}




陕公网安备61019002002605号