项目作者: xaionaro-go

项目描述 :
Disable UDP fragmentation
高级语言: Go
项目地址: git://github.com/xaionaro-go/udpnofrag.git
创建时间: 2020-06-01T10:52:24Z
项目社区:https://github.com/xaionaro-go/udpnofrag

开源协议:Creative Commons Zero v1.0 Universal

下载


GoDoc
go report
Build Status



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

  1. package main
  2. import (
  3. "log"
  4. "net"
  5. "github.com/xaionaro-go/udpnofrag"
  6. )
  7. func main() {
  8. conn, err := net.DialUDP("udp", nil, &net.UDPAddr{
  9. IP:net.ParseIP("192.168.0.1"),
  10. Port:443,
  11. })
  12. if err != nil {
  13. log.Fatal(err)
  14. }
  15. err = udpnofrag.UDPSetNoFragment(conn)
  16. if err != nil {
  17. log.Fatal(err)
  18. }
  19. b := make([]byte, 4096)
  20. _, err = conn.Write(b)
  21. if err != nil {
  22. log.Fatal(err)
  23. }
  24. }
  1. $ go run ./example.go
  2. 2020/06/01 11:43:04 write udp 192.168.0.129:60695->192.168.0.1:443: write: message too long
  3. exit status 1