ife

Interface Management for Node.js

npm install ife
12 downloads in the last week
39 downloads in the last month

IFE

IFE is (network) interface management for Node.js. It works on Linux, Illumos, FreeBSD, MacOS X.

var IFEdriver = require('ife'),
    ife = new IFEdriver();

API

var success =
ife.up({ name:      "eth0",
         ip:        "10.10.10.11",
         broadcast: "10.10.10.255",
         netmask:   "255.255.255.0",
         network:   "10.10.10.0"
});

Brings up the specified address on the interface "eth0".

var success =
ife.down('10.10.10.11');

Brings down the logical interface with the IP address 10.10.10.11.

var ifaces = ife.list()

List all the interfaces on the server.

var ip2mac = ife.arpcache();

Returns an hash of IPs and their corresponding MAC addresses in the local server's ARP table.

var count = 2,
    do_ping = true;

var sent =
ife.gratarp({ name: "eth0", local_ip: "10.10.10.11",
              remote_ip: "10.10.10.1" }, count);

var sent =
ife.gratarp({ name: "eth0", local_ip: "10.10.10.11",
              remote_ip: "10.10.10.1", remote_mac: "7c:d1:c3:dc:dd:f7" },
            count, do_ping);

Send (two) gratuitous ARP responses to 10.10.10.1 advertising our 10.10.10.11. Second, send the same, but explicitly to the target MAC address. By specifying a MAC address, we may also ping, which we elect to do.

npm loves you