-
Notifications
You must be signed in to change notification settings - Fork 18k
x/net/ether: create package that supports raw ethernet sockets #8432
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Comments
Comment 2 by nathan@nathan.io: It is not currently in go.net, do they have a separate issue tracker? |
The issue #8432 has been marked as an issue for golang.org/x/net. Change-Id: Ia39abd99b685c820ea6169ee6505b16028e7e77f Reviewed-on: https://go-review.googlesource.com/3836 Reviewed-by: Ian Lance Taylor <iant@golang.org>
hey what's the deal with this? i have a relatively shallow knowledge of the issue, but i've been reading through
|
I think it would be nice if this package provides well-cooked APIs that wrap various platform-dependent stuff such as BPF/eBPF, Netmap, PF_RING, AF_PACKET, DPDK, blah blah appropriately. Also it's nice if the package can work together with runtime-integrated network poller seamleslly. I have no clue on the API surface, it might not be so differnet from net.Conn/PacketConn, perhaps, not sure. |
In lieu of an official package that provides this functionality, I hacked together something that works decently on Linux for the time being: https://github.com/mdlayher/raw. My use case is building ethernet frames and ARP packets to send and receive ARP data in a fashion similar to I would love to team up with others who are more familiar with system calls and facilities of other platforms to create a solid |
What kind of help do you need? I am new to go but extensive expertise in C and routing software. |
I've also tried to add some link layer sockets functionality to standard library. Disclaimer: not an expert neither in go, nor in sockets programming. May be someone searching for raw ethernet packets functionality in go and landed here finds it interesting: https://bitbucket.org/almikhayl/go/commits/f49276912194858b9741a905e5ab7a44e40e394f . |
by nathan@nathan.io:
The text was updated successfully, but these errors were encountered: