Update readme

This commit is contained in:
Joseph C. Lehner 2016-11-13 09:07:07 +01:00
parent a268013960
commit 679ab536f5

View file

@ -14,8 +14,9 @@ Prebuilt binaries for Linux, OS X and Windows are available
``` ```
Usage: nmrpflash [OPTIONS...] Usage: nmrpflash [OPTIONS...]
Options (-a, -i and -f and/or -c are mandatory): Options (-i and -f and/or -c are mandatory):
-a <ipaddr> IP address to assign to target device -a <ipaddr> IP address to assign to target device
-A <ipaddr> IP address to assign to interface
-c <command> Command to run before (or instead of) TFTP upload -c <command> Command to run before (or instead of) TFTP upload
-f <firmware> Firmware file -f <firmware> Firmware file
-F <filename> Remote filename to use during TFTP upload -F <filename> Remote filename to use during TFTP upload
@ -34,32 +35,27 @@ Options (-a, -i and -f and/or -c are mandatory):
### Using nmrpflash ### Using nmrpflash
Connect your Netgear router to your computer using a network cable. Your Netgear router must be connected to your network using an
Assign a static IP address to the network adapter that's plugged into Ethernet cable. The device running `nmrpflash` must be connected
the Netgear router. to the same network, using either Wi-Fi or Ethernet.
For this example, we'll assume that your network interface is `eth0`. All available network interfaces can be listed using
First, we have to assign a static IP address to our network interface.
In this example, we'll use `192.168.1.2`. All available network interfaces
can be listed using
``` ```
# nmrpflash -L # nmrpflash -L
eth0 192.168.1.2 f2:11:a1:02:03:b1 eth0 192.168.1.2 f2:11:a1:02:03:b1
``` ```
Now we can flash the image. The argument for the `-a` option needs Once you've determined the interface to use, we can flash the image. Firmware
to be a *free* IP address from the same subnet as the one used by your images can usually be downloaded directly from Netgear. For details on how to
network interface; we'll use `192.168.1.254`. Firmware images can usually do this, see [here](#obtaining-firmware-images). Power on your device immediately
be downloaded directly from Netgear. For details on how to do this, see
[here](#obtaining-firmware-images). Power on your device immediately
after starting `nmrpflash`. after starting `nmrpflash`.
``` ```
# nmrpflash -i eth0 -a 192.168.1.254 -f EX2700-V1.0.1.8.img # nmrpflash -i eth0 -f EX2700-V1.0.1.8.img
Advertising NMRP server on eth0 ... / Advertising NMRP server on eth0 ... /
Received configuration request from a4:2b:8c:00:00:01. Received configuration request from a4:2b:8c:00:00:01.
Sending configuration: ip 192.168.1.254, mask 255.255.255.0. Sending configuration: ip 10.11.12.252, mask 255.255.255.0.
Received upload request: filename 'firmware'. Received upload request: filename 'firmware'.
Uploading EX2700-V1.0.1.8.img ... OK Uploading EX2700-V1.0.1.8.img ... OK
Waiting for remote to respond. Waiting for remote to respond.
@ -100,11 +96,21 @@ MAC address. It's also possible that your device does not support the NMRP proto
###### "Timeout while waiting for initial reply." ###### "Timeout while waiting for initial reply."
The device did not respond to `nmrpflash`'s TFTP upload request. This could indicate a bug The device did not respond to `nmrpflash`'s TFTP upload request. By default,
in the TFTP code; try using an external tftp client (busybox in this example), by specifying `nmrpflash` will assign `10.11.12.252` to the target device, while adding `10.11.12.253`
the `-c` flag instead of the `-f` flag: to the network interface specified by the `-i` flag. You can use `-a` to change the IP
address assigned to the target (e.g. if your network is `192.168.1.0/24`, specify a *free*
IP address, such as `-a 192.168.1.252`), and `-A` to change the IP address used for the
network interface.
`# nmrpflash -i eth0 -a 192.168.1.254 -c "busybox tftp -p -l EX2700-V1.0.1.8.img 192.168.1.254"` On Linux, `nmrpflash` uses interface alias `:42` by default, so if you specify `-i eth0`,
it will actually use `eth0:42`. To override this, manually specify an alias (e.g.
`-i eth0:43`).
This error message could also indicate a bug in the TFTP code; try using an external tftp
client (busybox in this example), by specifying the `-c` flag instead of the `-f` flag:
`# nmrpflash -i eth0 -c "busybox tftp -p -l EX2700-V1.0.1.8.img @IP@"`
###### "Timeout while waiting for CLOSE_REQ." ###### "Timeout while waiting for CLOSE_REQ."