diff --git a/server/handler/link_tun.go b/server/handler/link_tun.go index cbe4415..7c2d212 100644 --- a/server/handler/link_tun.go +++ b/server/handler/link_tun.go @@ -28,19 +28,19 @@ func checkTun() { if err != nil { base.Fatal("testTun err: ", err) } - //开启服务器转发 + // 开启服务器转发 if err := execCmd([]string{"sysctl -w net.ipv4.ip_forward=1"}); err != nil { base.Fatal(err) } if base.Cfg.IptablesNat { - //添加NAT转发规则 + // 添加NAT转发规则 ipt, err := iptables.New() if err != nil { base.Fatal(err) return } - //修复 rockyos nat 不生效 + // 修复 rockyos nat 不生效 cmdstr0 := fmt.Sprintln("modprobe -i iptable_filter") cmdstr1 := fmt.Sprintf("modprobe -i iptable_nat") err = execCmd([]string{cmdstr0, cmdstr1}) @@ -75,7 +75,8 @@ func LinkTun(cSess *sessdata.ConnSession) error { // log.Printf("Interface Name: %s\n", ifce.Name()) cSess.SetIfName(ifce.Name()) - cmdstr1 := fmt.Sprintf("ip link set dev %s up mtu %d multicast off", ifce.Name(), cSess.Mtu) + cmdstr1 := fmt.Sprintf("ip link set dev %s up mtu %d multicast off alias %s.%s", ifce.Name(), cSess.Mtu, + cSess.Group.Name, cSess.Username) cmdstr2 := fmt.Sprintf("ip addr add dev %s local %s peer %s/32", ifce.Name(), base.Cfg.Ipv4Gateway, cSess.IpAddr) err = execCmd([]string{cmdstr1, cmdstr2}) diff --git a/server/handler/link_tunnel.go b/server/handler/link_tunnel.go index 61cf1a1..3fd5b8b 100644 --- a/server/handler/link_tunnel.go +++ b/server/handler/link_tunnel.go @@ -238,7 +238,11 @@ func SetPostAuthXml(g *dbdata.Group, w http.ResponseWriter) error { if err != nil { return err } - HttpSetHeader(w, "X-CSTP-Post-Auth-XML", result.String()) + xmlAuth := "" + for _, v := range strings.Split(result.String(), "\n") { + xmlAuth += strings.TrimSpace(v) + } + HttpSetHeader(w, "X-CSTP-Post-Auth-XML", xmlAuth) return nil } diff --git a/server/handler/link_vtap.go b/server/handler/link_vtap.go index 399f9da..9536fca 100644 --- a/server/handler/link_vtap.go +++ b/server/handler/link_vtap.go @@ -54,7 +54,8 @@ func LinkMacvtap(cSess *sessdata.ConnSession) error { cSess.SetIfName(ifName) cmdstr1 := fmt.Sprintf("ip link add link %s name %s type macvtap mode bridge", base.Cfg.Ipv4Master, ifName) - cmdstr2 := fmt.Sprintf("ip link set dev %s up mtu %d address %s", ifName, cSess.Mtu, cSess.MacHw) + cmdstr2 := fmt.Sprintf("ip link set dev %s up mtu %d address %s alias %s.%s", ifName, cSess.Mtu, cSess.MacHw, + cSess.Group.Name, cSess.Username) err := execCmd([]string{cmdstr1, cmdstr2}) if err != nil { base.Error(err)