为了账号安全,请及时绑定邮箱和手机立即绑定

如何获取下一个IP地址?

如何获取下一个IP地址?

Go
梵蒂冈之花 2021-10-18 16:33:31
我正在考虑调用net.IP.String(), strings.Split(ip, "."),一些代码来计算所有的极端情况,最后net.ParseIP(s). 有没有更好的方法?下面是我当前实现的代码(没有处理特殊情况)。package mainimport (    "fmt"    "net"    "strconv"    "strings")func main() {    ip := net.ParseIP("127.1.0.0")    next, err := NextIP(ip)    if err != nil {        panic(err)    }    fmt.Println(ip, next)}func NextIP(ip net.IP) (net.IP, error) {    s := ip.String()    sa := strings.Split(s, ".")    i, err := strconv.Atoi(sa[2])    if err != nil {        return nil, err    }    i++    sa[3] = strconv.Itoa(i)    s = strings.Join(sa, ".")    return net.ParseIP(s), nil}
查看完整描述

3 回答

  • 3 回答
  • 0 关注
  • 133 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信