2024-03-05 17:28:18 +08:00
|
|
|
|
package entity
|
|
|
|
|
|
|
|
|
|
// Server
|
|
|
|
|
// @description: 服务端
|
|
|
|
|
type Server struct {
|
|
|
|
|
Base
|
2024-03-14 15:23:16 +08:00
|
|
|
|
IpScope string `json:"ipScope" gorm:"type:varchar(255);not null;comment:'ip范围'"`
|
2024-03-05 17:28:18 +08:00
|
|
|
|
ListenPort int `json:"listenPort" gorm:"type:int(10);not null;comment:'服务监听端口'"`
|
|
|
|
|
PrivateKey string `json:"privateKey" gorm:"type:text;not null;comment:'密钥'"`
|
|
|
|
|
PublicKey string `json:"publicKey" gorm:"type:text;not null;comment:'公钥'"`
|
|
|
|
|
PostUpScript string `json:"postUpScript" gorm:"type:text;default null;comment:'postUpScript'"`
|
|
|
|
|
PreDownScript string `json:"preDownScript" gorm:"type:text;default null;comment:'preDownScript'"`
|
|
|
|
|
PostDownScript string `json:"postDownScript" gorm:"type:text;default null;comment:postDownScript"`
|
|
|
|
|
Clients []Client `json:"clients" gorm:"foreignKey:ServerId"`
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
func (*Server) TableName() string {
|
|
|
|
|
return "t_wg_server"
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
// Client
|
|
|
|
|
// @description: 客户端
|
|
|
|
|
type Client struct {
|
|
|
|
|
Base
|
2024-03-14 15:23:16 +08:00
|
|
|
|
ServerId string `json:"serverId" gorm:"type:varchar(36);not null;comment:'服务端id'"`
|
|
|
|
|
Name string `json:"name" gorm:"type:varchar(100);not null;comment:'客户端名称'"`
|
|
|
|
|
Email string `json:"email" gorm:"type:varchar(100);default null;comment:'联系邮箱'"`
|
|
|
|
|
SubnetRange string `json:"subnetRange" gorm:"type:varchar(255);default null;comment:'子网范围'"`
|
|
|
|
|
IpAllocation string `json:"ipAllocation" gorm:"type:varchar(255);not null;comment:'客户端ip'"`
|
|
|
|
|
AllowedIps string `json:"allowedIps" gorm:"type:varchar(255);not null;comment:'允许访问的ip'"`
|
|
|
|
|
ExtraAllowedIps string `json:"extraAllowedIps" gorm:"type:varchar(255);default null;comment:'额外允许的ip范围'"`
|
|
|
|
|
Endpoint string `json:"endpoint" gorm:"type:varchar(255);default null;comment:'端点'"`
|
2024-05-24 15:19:26 +08:00
|
|
|
|
UseServerDns *int `json:"useServerDns" gorm:"type:int(1);default 1;comment:'是否使用服务端dns'"`
|
|
|
|
|
EnableAfterCreation *int `json:"enableAfterCreation" gorm:"type:int(1);default 1;comment:'是否创建后启用'"`
|
2024-03-14 15:23:16 +08:00
|
|
|
|
Keys string `json:"keys" gorm:"type:text;default null;comment:'公钥和密钥的json串'"`
|
|
|
|
|
UserId string `json:"userId" gorm:"type:char(36);not null;comment:'创建人id'"`
|
2024-05-24 15:19:26 +08:00
|
|
|
|
Enabled *int `json:"enabled" gorm:"type:tinyint(1);default 1;comment:'状态(0 - 禁用 | 1 - 正常)'"`
|
2024-03-14 15:23:16 +08:00
|
|
|
|
User *User `json:"user" gorm:"foreignKey:UserId"`
|
|
|
|
|
Server *Server `json:"server" gorm:"foreignKey:ServerId"`
|
2024-03-05 17:28:18 +08:00
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
func (*Client) TableName() string {
|
|
|
|
|
return "t_wg_client"
|
|
|
|
|
}
|