LinNetx Wiki
Allows Linux users to natively manage Netgear ProSafe Plus switches.
Brought to you by:
linux4life798
Wire-dumps
The client's hardware address replaces the MM AA CC AA DD RR fields.
/* blind broadcast message */
char pack1[92] = {
0x01, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
MM, AA, CC, AA, DD, RR, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01,
0x4e, 0x53, 0x44, 0x50, 0x00, 0x00, 0x00, 0x00,
0x00, 0x01, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00,
0x00, 0x03, 0x00, 0x00, 0x00, 0x04, 0x00, 0x00,
0x00, 0x05, 0x00, 0x00, 0x00, 0x06, 0x00, 0x00,
0x00, 0x07, 0x00, 0x00, 0x00, 0x08, 0x00, 0x00,
0x00, 0x0b, 0x00, 0x00, 0x00, 0x0c, 0x00, 0x00,
0x00, 0x0d, 0x00, 0x00, 0x00, 0x0e, 0x00, 0x00,
0x00, 0x0f, 0x00, 0x00, 0x74, 0x00, 0x00, 0x00,
0xff, 0xff, 0x00, 0x00
};
char pack2[88] = {
0x01, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
MM, AA, CC, AA, DD, RR, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x08,
0x4e, 0x53, 0x44, 0x50, 0x00, 0x00, 0x00, 0x00,
0x00, 0x01, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00,
0x00, 0x03, 0x00, 0x00, 0x00, 0x04, 0x00, 0x00,
0x00, 0x05, 0x00, 0x00, 0x00, 0x06, 0x00, 0x00,
0x00, 0x07, 0x00, 0x00, 0x00, 0x08, 0x00, 0x00,
0x00, 0x0b, 0x00, 0x00, 0x00, 0x0c, 0x00, 0x00,
0x00, 0x0d, 0x00, 0x00, 0x00, 0x0e, 0x00, 0x00,
0x00, 0x0f, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00
};
Header Breakdown
/* header data template */
struct hdr_data {
/* byte[0] is 0x01 */
/* byte[1] is 0x01, 0x02, 0x03, or 0x04 */
enum {
ACT_CLIENT_GET_RQST = 0x01,
ACT_SWITCH_GET_RESP = 0x02,
ACT_CLIENT_SET_RQST = 0x03,
ACT_SWITCH_SET_RESP = 0x04
} action;
/* byte[2-7] are 0x00 */
/* byte[8-13] client MAC address */
mac_t client;
/* byte[14-19] device MAC address(if sent by client, all 0x00s)*/
mac_t device;
/* byte[20-21] are 0x00 */
/* byte[22-23] is the packet identifier number */
/* byte[24-27] is the string "NSDP" (4e 53 44 50) */
/* byte[28-31] are 0x00 */
};
Observed Syntax
01:<action>:00:00:00:00:00:00:<MAC>:<MAC>:00:00:00:<packet num>:'N':'S':'D':'P':00:00:00:00:<message>:FF:FF:00:00
*** Messaging ***