[lkml]   [2008]   [Jun]   [19]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
Messages in this thread
    SubjectIP layer send packet

    Hi kernel experts,

    I’m trying to modify the IP packet src & dest address after receiving from
    the wire and reconstruct the packet at kernel layer without going to apps
    layer and ultimately send out the packet. So, the recommended API to be used
    is ip_finish_output() (as it is the only exported symbol to send UDP
    packets). However, since the IP header content are changed, the system must
    automatically recalculate checksum and needs mac address as well, and most
    of the time mac address of unknown hosts.

    Currently, when I try, I need to invoke mac address resolution via arp by
    manually calling neigh_lookup of existing arp entry before sending the
    packet by calling dev_queue_xmit().

    My questions is how can I change (dest/src IP and port number) at before
    ip_finish_output() by accessing specific struct should I want to send the
    packet to unknown hosts (unknown means remote hosts that do not have an arp
    entry in local host's arp table) by calling ip_finish_output().

    Thank you very much for your advice.

    View this message in context:
    Sent from the linux-kernel mailing list archive at

    To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
    the body of a message to
    More majordomo info at
    Please read the FAQ at

     \ /
      Last update: 2008-06-19 12:37    [W:0.018 / U:14.532 seconds]
    ©2003-2017 Jasper Spaans. hosted at Digital OceanAdvertise on this site