package mainimport (fmtnet)func main() {// 创建连接socket, err := net.DialUDP(udp4, nil, net.UDPAddr{IP: net.IPv4(192, 168, 125, 68),Port: 137,})if err != nil {fmt.Println(连接失败!, err)r...

package main import ( "fmt" "net" ) func main() { // 创建连接 socket, err := net.DialUDP("udp4", nil, &net.UDPAddr{ IP: net.IPv4(192, 168, 125, 68), Port: 137, }) if err != nil { fmt.Println("连接失败!", err) return } defer socket.Close() // 发送数据 senddata := []byte{0x80,0x94,0x00,0x00,0x00,0x01,0x00,0x00,0x00,0x00,0x00,0x00,0x20,0x43,0x4b,0x41,0x41,0x41,0x41,0x41,0x41,0x41,0x41,0x41,0x41,0x41,0x41,0x41,0x41,0x41,0x41,0x41,0x41,0x41,0x41,0x41,0x41,0x41,0x41,0x41,0x41,0x41,0x41,0x41,0x41,0x00,0x00,0x21,0x00,0x01} _, err = socket.Write(senddata) if err != nil { fmt.Println("发送数据失败!", err) return } // 接收数据 data := make([]byte, 4096) fmt.Println("a") read, remoteAddr, err := socket.ReadFromUDP(data) if err != nil { fmt.Println("读取数据失败!", err) return } fmt.Println(read, remoteAddr) flag := 0 for i := read - 1; i >= 0; i-- { if data[i] == 28 { flag = i break } } fmt.Println(data[:flag]) fmt.Printf("%s\n",data[57:flag]) }
沃梦达教程
本文标题为:golang简单实现netbios远程查询机器名字


猜你喜欢
- Android实现监听音量的变化 2023-03-30
- Android studio实现动态背景页面 2023-05-23
- 详解flutter engine 那些没被释放的东西 2022-12-04
- 最好用的ios数据恢复软件:PhoneRescue for Mac 2023-09-14
- Android MaterialButton使用实例详解(告别shape、selector) 2023-06-16
- 作为iOS开发,这道面试题你能答出来,说明你基础很OK! 2023-09-14
- iOS 对当前webView进行截屏的方法 2023-03-01
- Flutter实现底部和顶部导航栏 2022-08-31
- Android实现轮询的三种方式 2023-02-17
- SurfaceView播放视频发送弹幕并实现滚动歌词 2023-01-02