当前位置: 首页 > news >正文

校园网站建设软件福州网站设计大概费用

校园网站建设软件,福州网站设计大概费用,四川省城乡和住建厅官网,视频广告《零入门kubernetes网络实战》视频专栏地址 https://www.ixigua.com/7193641905282875942 本篇文章视频地址(稍后上传) 本篇文章主要是使用golang自带的syscall包来创建tun类型的虚拟网络设备。 注意#xff1a; 目前只能使用syscall包来创建tun类型的虚拟设备。 tun虚拟网…《零入门kubernetes网络实战》视频专栏地址 https://www.ixigua.com/7193641905282875942 本篇文章视频地址(稍后上传) 本篇文章主要是使用golang自带的syscall包来创建tun类型的虚拟网络设备。 注意 目前只能使用syscall包来创建tun类型的虚拟设备。 tun虚拟网卡设备的启动IP配置路由配置可能需要其他方式实现。 比方说通过netlink包方式来实现。 1、golang代码 package mainimport (bytesfmtgithub.com/vishvananda/netlinknetossyscallunsafe )const (tunDevice /dev/net/tunifnameSize 16 )type ifreqFlags struct {IfrnName [ifnameSize]byteIfruFlags uint16 }func ioctl(fd int, request, argp uintptr) error {_, _, errno : syscall.Syscall(syscall.SYS_IOCTL, uintptr(fd), request, argp)if errno ! 0 {return fmt.Errorf(ioctl failed with %s, errno)}return nil }func fromZeroTerm(s []byte) string {return string(bytes.TrimRight(s, \000)) }func OpenTun(name string) (*os.File, string, error) {tun, err : os.OpenFile(tunDevice, os.O_RDWR, 0)if err ! nil {fmt.Printf(----OpenTun----err:%v\n, err.Error())return nil, , err}var ifr ifreqFlagscopy(ifr.IfrnName[:len(ifr.IfrnName)-1], []byte(name\000))ifr.IfruFlags syscall.IFF_TUN | syscall.IFF_NO_PIerr ioctl(int(tun.Fd()), syscall.TUNSETIFF, uintptr(unsafe.Pointer(ifr)))if err ! nil {fmt.Printf(----OpenTun---ioctl----err:%v\n, err.Error())return nil, , err}// 1表示程序结束后创建的tun设备依旧在。// 默认为0程序结束后创建的tun设备就自动删除了err ioctl(int(tun.Fd()), syscall.TUNSETPERSIST, 1)if err ! nil {fmt.Printf(----OpenTun---ioctl---persist---err:%v\n, err.Error())return nil, , err}ifname : fromZeroTerm(ifr.IfrnName[:ifnameSize])return tun, ifname, nil }func configureIface(ifname string, ipn *net.IPNet, mtu int) error {iface, err : netlink.LinkByName(ifname)if err ! nil {return fmt.Errorf(failed to lookup interface %v, ifname)}err netlink.AddrAdd(iface, netlink.Addr{IPNet: ipn, Label: })if err ! nil {return fmt.Errorf(failed to add IP address %v to %v: %v, ipn.String(), ifname, err)}err netlink.LinkSetMTU(iface, mtu)if err ! nil {return fmt.Errorf(failed to set MTU for %v: %v, ifname, err)}err netlink.LinkSetUp(iface)if err ! nil {return fmt.Errorf(failed to set interface %v to UP state: %v, ifname, err)}err netlink.RouteAdd(netlink.Route{LinkIndex: iface.Attrs().Index,Scope: netlink.SCOPE_UNIVERSE,Dst: ipn,})if err ! nil err ! syscall.EEXIST {return fmt.Errorf(failed to add route (%v - %v): %v, ipn.String(), ifname, err)}return nil }func main() {tun, fname, err : OpenTun(flannel-test)if err ! nil {fmt.Printf(----Create--Tun------err:%v\n, err.Error())return}fmt.Printf(-----create---tun---name:%v\tfname:%v\n, tun.Name(), fname)_, ipn, _ : net.ParseCIDR(10.244.1.0/24)configureIface(fname, ipn, 1500)//time.Sleep(time.Hour) } 2、本地编译 Makefile build:CGO_ENABLED0 GOOSlinux GOARCHamd64 go build main.goscp:scp main root10.211.55.122:/rootall:make build make scp3、远程服务器测试 route -n å ip a s | grep 10.211ip link sh flannel-test./main ip link sh flannel-testip a sh flannel-testroute -nip tuntap listethtool -i flannel-testethtool -i eth04、测试虚拟网卡flannel-test的连通性 5、/dev/net/tun: not pollable read /dev/net/tun: not pollable其实曾经还出现过此代码存在的情况下也会报上面的错误。 可惜已经不知道如何恢复异常场景了。 点击 下面 返回 专栏目录 零入门kubernetes网络实战技术专栏之文章目录
http://www.tj-hxxt.cn/news/222625.html

相关文章:

  • 单位建网站的优势wordpress运行crawling
  • xp做网站深圳宝安做网站的公司
  • 做网站宽高怎么决定厦门seo顾问
  • 如何让百度搜到自己的网站网站免费诊断
  • 自己建站流程十堰seo
  • 微信公众号做电影网站要域名吗如何做好公司网站建设
  • 阿里云备案网站备案域名购买成品网站多少钱
  • 网站开发计入什么会计科目网站网页区别是什么
  • 永修建设局网站网站不要了该如何处理
  • 各大网站做推广的广告怎么做滨江区建设局网站
  • 都匀市建设局网站建筑人才网招聘官网登录
  • wap网站域名申请免费推广方式有哪些
  • 阿里云可以做网站吗中国建筑英才网官网手机版
  • 网站开发国际化许昌网页制作
  • 四川成都网站制作软件开发常用架构
  • 建站公司获客成本优速网站建设优化seo
  • 六安市裕安区建设局网站能够做网站的资质
  • 北京通信管理局网站备案处工信部域名备案信息查询
  • 唐山网站建设外包公司哪家好韩国还有机会出线吗
  • 个人网站备案填写哈尔滨公司建站模板
  • 做低价的跨境电商网站wordpress 京东插件
  • 网站是做流程图联想用来网站开发笔记本
  • 网站建设结构总结@安徽网站建设
  • 重庆做网站公司有哪些视频号下载器手机版
  • 如何百度收录自己的网站仲恺企业网站建设
  • 凡度网络北京网站建设公司wordpress导航样式
  • 有人用dw做网站吗商城类网站设计制作
  • 网站建设的流程与思路wordpress压缩数据库
  • 设计logo网站推荐哪种语言做网站最合适
  • 济宁软件开发网站建设网站播放图片多大合适