An open API service indexing awesome lists of open source software.

https://github.com/xaionaro-go/udpnofrag

Disable UDP fragmentation
https://github.com/xaionaro-go/udpnofrag

disable do frag fragment fragmentation go golang no nofrag not udp

Last synced: 6 months ago
JSON representation

Disable UDP fragmentation

Awesome Lists containing this project

README

          

[![GoDoc](https://godoc.org/github.com/xaionaro-go/udpnofrag?status.svg)](https://pkg.go.dev/github.com/xaionaro-go/udpnofrag?tab=doc)
[![go report](https://goreportcard.com/badge/github.com/xaionaro-go/udpnofrag)](https://goreportcard.com/report/github.com/xaionaro-go/udpnofrag)
[![Build Status](https://travis-ci.org/xaionaro-go/udpnofrag.svg?branch=master)](https://travis-ci.org/xaionaro-go/udpnofrag)



CC0



To the extent possible under law,

Dmitrii Okunev

has waived all copyright and related or neighboring rights to
"A package to disable UDP fragmentation.
This work is published from:

Ireland
".

# Quick start

```go
package main

import (
"log"
"net"

"github.com/xaionaro-go/udpnofrag"
)

func main() {
conn, err := net.DialUDP("udp", nil, &net.UDPAddr{
IP:net.ParseIP("192.168.0.1"),
Port:443,
})
if err != nil {
log.Fatal(err)
}

err = udpnofrag.UDPSetNoFragment(conn)
if err != nil {
log.Fatal(err)
}

b := make([]byte, 4096)
_, err = conn.Write(b)
if err != nil {
log.Fatal(err)
}
}
```

```sh
$ go run ./example.go
2020/06/01 11:43:04 write udp 192.168.0.129:60695->192.168.0.1:443: write: message too long
exit status 1
```