struct netbuf {                                                 
  unsigned char cmd;    R}h
  short size;           f[^ETCY
  struct netbuf *next;  ̃pPbgw|C^(N\ɂꍇɗp)
                                                                
  union {                                                       
    union {                               
      struct {                            
        uint8 addr[MACADDR_SIZE];         
      } macaddr;                          ʃp[^
      struct {                            
        uint32 addr;                      
      } ipaddr;                           
    } common;                             
    union {                               
      struct {                            
        uint8 dst_macaddr[MACADDR_SIZE];  
        uint16 type;                      Ethernetp[^[
        uint32 dst_ipaddr;                
      } send;                             
    } ethernet;                           
...()...
  } option;                                                     
                                                                
  char *top;     f[^̐擪ʒuw|C^
                                                                
  char data[0];  f[^Eobt@̐擪ANZXpo
};                                                              
