(srcMac, dstMac, etherType, payload)
| 25 | |
| 26 | // Helper to create Ethernet frame |
| 27 | function createEthFrame(srcMac, dstMac, etherType, payload) { |
| 28 | const frame = Buffer.alloc(14 + payload.length); |
| 29 | dstMac.copy(frame, 0); |
| 30 | srcMac.copy(frame, 6); |
| 31 | frame.writeUInt16BE(etherType, 12); |
| 32 | payload.copy(frame, 14); |
| 33 | return frame; |
| 34 | } |
| 35 | |
| 36 | // Helper to create IP header |
| 37 | function createIPHeader(net, srcIP, dstIP, protocol, payloadLen) { |