https://github.com/mdlayher/raw
Package raw enables reading and writing data at the device driver level for a network interface. MIT Licensed.
https://github.com/mdlayher/raw
Last synced: 9 months ago
JSON representation
Package raw enables reading and writing data at the device driver level for a network interface. MIT Licensed.
- Host: GitHub
- URL: https://github.com/mdlayher/raw
- Owner: mdlayher
- License: mit
- Archived: true
- Created: 2015-07-06T16:11:47.000Z (over 10 years ago)
- Default Branch: main
- Last Pushed: 2022-02-21T18:18:33.000Z (almost 4 years ago)
- Last Synced: 2024-07-31T20:52:36.651Z (over 1 year ago)
- Language: Go
- Homepage:
- Size: 124 KB
- Stars: 424
- Watchers: 14
- Forks: 73
- Open Issues: 15
-
Metadata Files:
- Readme: README.md
- License: LICENSE.md
Awesome Lists containing this project
- awesome-go - raw - Package raw enables reading and writing data at the device driver level for a network interface. (Networking / Transliteration)
- awesome-go-cn - raw
- awesome-go - raw - Package raw enables reading and writing data at the device driver level for a network interface. (Networking / Advanced Console UIs)
- awesome-go-cn - raw
- fucking-awesome-go - :octocat: raw - Package raw enables reading and writing data at the device driver level for a network interface. :star: 18 :fork_and_knife: 2 (Networking / Advanced Console UIs)
- awesome-go - raw - | - | - | (Networking / Strings)
- awesome-go - raw - Package raw enables reading and writing data at the device driver level for a network interface. (Networking / Transliteration)
- awesome-go-plus - raw - Package raw enables reading and writing data at the device driver level for a network interface.  (Networking / Transliteration)
- awesome-go - raw - Package raw enables reading and writing data at the device driver level for a network interface. (Networking / Transliteration)
- awesome-go - raw - Package raw enables reading and writing data at the device driver level for a network interface. - :arrow_down:23 - :star:34 (Networking / Strings)
- awesome-go - raw - Package raw enables reading and writing data at the device driver level for a network interface. MIT Licensed. - ★ 238 (Networking)
- awesome-go - raw - Package raw enables reading and writing data at the device driver level for a network interface. (Networking / Strings)
- awesome-go-zh - raw
- awesome-go-cn - raw
- awesome-go-extra - ARCHIVED - 07-06T16:11:47Z|2022-02-21T18:18:33Z| (Networking / Uncategorized)
- awesome-go - raw - Package raw enables reading and writing data at the device driver level for a network interface. (<span id="网络-networking">网络 Networking</span> / <span id="高级控制台用户界面-advanced-console-uis">高级控制台用户界面 Advanced Console UIs</span>)
- zero-alloc-awesome-go - raw - Package raw enables reading and writing data at the device driver level for a network interface. (Networking / Transliteration)
- awesome-go - raw - Package raw enables reading and writing data at the device driver level for a network interface. (Networking / Transliteration)
- awesome-Char - raw - Package raw enables reading and writing data at the device driver level for a network interface. (Networking / Uncategorized)
- awesome-go-cn - raw
README
# raw [](https://github.com/mdlayher/raw/actions) [](https://pkg.go.dev/github.com/mdlayher/raw) [](https://goreportcard.com/report/github.com/mdlayher/raw)
Package `raw` enables reading and writing data at the device driver level for a
network interface. MIT Licensed.
Deprecated: use
[`github.com/mdlayher/packet`](https://github.com/mdlayher/packet) on Linux
instead. This package is unmaintained.
For more information about using sockets with Ethernet frames in Go, check out
my blog post: [Network Protocol Breakdown: Ethernet and
Go](https://mdlayher.com/blog/network-protocol-breakdown-ethernet-and-go/).
## Unmaintained
This repository was one of my first major Go networking libraries. Although I
have updated it on Linux to incorporate modern Go best practices (asynchronous
I/O, runtime network poller integration), the non-Linux platform code is
effectively unmaintained and does not have the same level of functionality.
I encourage all Linux users of this package to migrate to
[`github.com/mdlayher/packet`](https://github.com/mdlayher/packet), which is a
modern `AF_PACKET` library. The existing `*raw.Conn` APIs now call directly into
the equivalent `*packet.Conn` APIs, and a level of indirection can be removed by
migrating to that package.