mirror of
https://github.com/oneclickvirt/basics.git
synced 2025-10-06 17:17:15 +08:00
Update
This commit is contained in:
@@ -41,7 +41,7 @@ func main() {
|
|||||||
}()
|
}()
|
||||||
fmt.Println("项目地址:", "https://github.com/oneclickvirt/basics")
|
fmt.Println("项目地址:", "https://github.com/oneclickvirt/basics")
|
||||||
ipInfo, _, _ := network.NetworkCheck("both", false, language)
|
ipInfo, _, _ := network.NetworkCheck("both", false, language)
|
||||||
ipv6Info, err := ipv6.GetIPv6Mask()
|
ipv6Info, err := ipv6.GetIPv6Mask(language)
|
||||||
res := system.CheckSystemInfo(language)
|
res := system.CheckSystemInfo(language)
|
||||||
fmt.Println("--------------------------------------------------")
|
fmt.Println("--------------------------------------------------")
|
||||||
temp := strings.ReplaceAll(res+ipInfo, "\n\n", "\n")
|
temp := strings.ReplaceAll(res+ipInfo, "\n\n", "\n")
|
||||||
|
20
ipv6/ipv6.go
20
ipv6/ipv6.go
@@ -8,7 +8,7 @@ import (
|
|||||||
)
|
)
|
||||||
|
|
||||||
// GetIPv6Mask 匹配获取公网 IPV6 的掩码信息
|
// GetIPv6Mask 匹配获取公网 IPV6 的掩码信息
|
||||||
func GetIPv6Mask() (string, error) {
|
func GetIPv6Mask(language string) (string, error) {
|
||||||
interfaceName := getNetworkInterface()
|
interfaceName := getNetworkInterface()
|
||||||
if interfaceName == "" {
|
if interfaceName == "" {
|
||||||
return "", fmt.Errorf("无法获取网络接口名称")
|
return "", fmt.Errorf("无法获取网络接口名称")
|
||||||
@@ -30,16 +30,28 @@ func GetIPv6Mask() (string, error) {
|
|||||||
}
|
}
|
||||||
if len(updatedAddrs) == len(addrs) {
|
if len(updatedAddrs) == len(addrs) {
|
||||||
_, bits := ipnet.Mask.Size()
|
_, bits := ipnet.Mask.Size()
|
||||||
return fmt.Sprintf("IPv6 子网掩码: /%d\n", bits), nil
|
if language == "en" {
|
||||||
|
return fmt.Sprintf(" IPV6 Mask : /%d\n", bits), nil
|
||||||
|
} else {
|
||||||
|
return fmt.Sprintf(" IPV6 子网掩码 : /%d\n", bits), nil
|
||||||
|
}
|
||||||
}
|
}
|
||||||
for _, updatedAddr := range updatedAddrs {
|
for _, updatedAddr := range updatedAddrs {
|
||||||
if updatedIPnet, ok := updatedAddr.(*net.IPNet); ok {
|
if updatedIPnet, ok := updatedAddr.(*net.IPNet); ok {
|
||||||
if updatedIPv6 := updatedIPnet.IP.To16(); updatedIPv6 != nil {
|
if updatedIPv6 := updatedIPnet.IP.To16(); updatedIPv6 != nil {
|
||||||
if !isIPv6LinkLocal(updatedIPv6) && !isIPv6SiteLocal(updatedIPv6) && updatedIPv6.String() != ipv6.String() {
|
if !isIPv6LinkLocal(updatedIPv6) && !isIPv6SiteLocal(updatedIPv6) && updatedIPv6.String() != ipv6.String() {
|
||||||
_, bits := updatedIPnet.Mask.Size()
|
_, bits := updatedIPnet.Mask.Size()
|
||||||
return fmt.Sprintf("IPv6 子网掩码: /%d\n", bits), nil
|
if language == "en" {
|
||||||
|
return fmt.Sprintf(" IPV6 Mask : /%d\n", bits), nil
|
||||||
|
} else {
|
||||||
|
return fmt.Sprintf(" IPV6 子网掩码 : /%d\n", bits), nil
|
||||||
|
}
|
||||||
} else if !isIPv6LinkLocal(updatedIPv6) && !isIPv6SiteLocal(updatedIPv6) && updatedIPv6.String() == ipv6.String() {
|
} else if !isIPv6LinkLocal(updatedIPv6) && !isIPv6SiteLocal(updatedIPv6) && updatedIPv6.String() == ipv6.String() {
|
||||||
return "IPv6 子网掩码: /128", nil
|
if language == "en" {
|
||||||
|
return " IPV6 Mask : /128", nil
|
||||||
|
} else {
|
||||||
|
return " IPV6 子网掩码 : /128", nil
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
13
ipv6/ipv6_test.go
Normal file
13
ipv6/ipv6_test.go
Normal file
@@ -0,0 +1,13 @@
|
|||||||
|
package ipv6
|
||||||
|
|
||||||
|
import (
|
||||||
|
"fmt"
|
||||||
|
"testing"
|
||||||
|
)
|
||||||
|
|
||||||
|
func TestGetIPv6Mask(t *testing.T) {
|
||||||
|
ipv6Info, err := GetIPv6Mask("zh")
|
||||||
|
if err == nil {
|
||||||
|
fmt.Println(ipv6Info)
|
||||||
|
}
|
||||||
|
}
|
Reference in New Issue
Block a user