网络协议栈设计(八)
//Network_ARP_send.h
#pragma once
#include"Header_Include.h"
struct arp_pkt
{
u_int16_t hardware_type;
u_int16_t protocol_type;
u_int8_t hardware_addr_length;
u_int8_t protocol_addr_length;
u_int16_t op_code;
u_int8_t source_mac[6];
u_int8_t source_ip[4];
u_int8_t destination_mac[6];
u_int8_t destination_ip[4];
};
/*
if the needer mac addr is not in arp_table, so request
*/
void load_arp_packet(u_int8_t *destination_ip);
void network_arp_send(u_int8_t *destination_ip, u_int8_t *ethernet_d