# NATOK
- natok是一个将局域网内个人服务代理到公网可访问的内网穿透工具,基于tcp协议、支持udp协议,支持任何tcp上层协议(列如:http、https、ssh、telnet、data base、remote desktop....)。
- 目前市面上提供类似服务的有:花生壳、natapp、ngrok等等。当然,这些工具都很优秀!但是免费提供的服务都很有限,想要有比较好的体验都需要支付一定的套餐费用,由于数据包会流经第三方,因此总归有些不太友好。
- natok-server与natok-cli都基于GO语言开发,几乎不存在并发问题。运行时的内存开销也很低,一般在几十M左右。所以很推荐自主搭建服务!
**服务端与客户端**
| 服务 |支持系统| 下载地址 |
| ------------------------|----- | ------------------------------------------------------ |
| natok-cli |linux/windows| [GitHub](https://github.com/natokay/go-natok-cli/releases) |
| natok-server| linux/windows|[GitHub](https://github.com/natokay/go-natok-server/releases) |
**natok-cli的相关配置:conf.yaml**
```yaml
natok:
server:
- host: natok1.cn #服务器地址:域名 或者 ip
port: 1001 #服务器端口:可自定义
#客户端访问密钥,从natok-server的web页面中C端列表里获取
access-key: 74a7a42fcdc4ccb6c8641ce543fe2e07
- host: natok2.cn
port: 1001
access-key: 74a7a42fcdc4ccb6c8641ce543fe2e07
cert-key-path: s-cert.key #TSL加密密钥,可自己指定。注:需与server端保持一致
cert-pem-path: s-cert.pem #TSL加密证书,可自己指定。注:需与server端保持一致
log-file-path: out.log #程序日志输出配置
```
- windows系统启动: 双击 natok-cli.exe
```powershell
# 注册服务,自动提取管理员权限:
natok-cli.exe install
# 卸载服务,自动提取管理员权限:
natok-cli.exe uninstall
# 启停服务,自动提取管理员权限:
natok-cli.exe start/stop
# 启停服务,终端管理员权限
net start/stop natok-cli
```
- Linux系统启动:
```shell
# 授予natok-cli可执权限
chmod 755 natok-cli
# 启动应用
nohup ./natok-cli > /dev/null 2>&1 &
```
---
**Go 1.13 及以上(推荐)**
```shell
# 配置 GOPROXY 环境变量
go env -w GO111MODULE=on
go env -w GOPROXY=https://goproxy.io,direct
```
构建natok-cli可执行程序
```shell
# 克隆项目
git clone https://github.com/natokay/go-natok-cli.git
# 进入项目目录
cd go-natok-cli
# 更新/下载依赖
go mod tidy
go mod vendor
# 设置目标可执行程序操作系统构架,包括 386,amd64,arm
go env -w GOARCH=amd64
# 设置可执行程序运行操作系统,支持 darwin,freebsd,linux,windows
go env -w GOOS=windows
# golang windows 程序获取管理员权限(UAC)
rsrc -manifest nac.manifest -o nac.syso
# cd到main.go目录,打包命令
go build
# 启动程序
./natok-cli.exe
```
## 版本描述
**natok:1.0.0**
natok-cli与natok-server网络代理通信基本功能实现。
**natok:1.1.0**
natok-cli与natok-server支持windows平台注册为服务运行,可支持开机自启,保证服务畅通。
**natok:1.2.0**
natok-cli可与多个natok-server保持连接,支持从多个不同的natok-server来访问natok-cli,以实现更快及更优的网络通信。
**natok:1.3.0**
natok-cli与natok-server可支持udp网络代理。
没有合适的资源?快使用搜索试试~ 我知道了~
基于GO语言的客户端.zip
共17个文件
go:7个
dockerfile:1个
yaml:1个
需积分: 5 0 下载量 6 浏览量
2024-05-23
15:53:57
上传
评论
收藏 15KB ZIP 举报
温馨提示
Go语言(也称为Golang)是由Google开发的一种静态强类型、编译型的编程语言。它旨在成为一门简单、高效、安全和并发的编程语言,特别适用于构建高性能的服务器和分布式系统。以下是Go语言的一些主要特点和优势: 简洁性:Go语言的语法简单直观,易于学习和使用。它避免了复杂的语法特性,如继承、重载等,转而采用组合和接口来实现代码的复用和扩展。 高性能:Go语言具有出色的性能,可以媲美C和C++。它使用静态类型系统和编译型语言的优势,能够生成高效的机器码。 并发性:Go语言内置了对并发的支持,通过轻量级的goroutine和channel机制,可以轻松实现并发编程。这使得Go语言在构建高性能的服务器和分布式系统时具有天然的优势。 安全性:Go语言具有强大的类型系统和内存管理机制,能够减少运行时错误和内存泄漏等问题。它还支持编译时检查,可以在编译阶段就发现潜在的问题。 标准库:Go语言的标准库非常丰富,包含了大量的实用功能和工具,如网络编程、文件操作、加密解密等。这使得开发者可以更加专注于业务逻辑的实现,而无需花费太多时间在底层功能的实现上。 跨平台:Go语言支持多种操作系统和平台,包括Windows、Linux、macOS等。它使用统一的构建系统(如Go Modules),可以轻松地跨平台编译和运行代码。 开源和社区支持:Go语言是开源的,具有庞大的社区支持和丰富的资源。开发者可以通过社区获取帮助、分享经验和学习资料。 总之,Go语言是一种简单、高效、安全、并发的编程语言,特别适用于构建高性能的服务器和分布式系统。如果你正在寻找一种易于学习和使用的编程语言,并且需要处理大量的并发请求和数据,那么Go语言可能是一个不错的选择。
资源推荐
资源详情
资源评论
收起资源包目录
基于GO语言的客户端.zip (17个子文件)
content
s-cert.key 2KB
s-cert.pem 1KB
go.mod 256B
go.sum 1KB
LICENSE 1KB
conf.yaml 157B
application.json 162B
core
constant.go 867B
intra_server_handler.go 2KB
natok_server_handler.go 5KB
pool_handler.go 2KB
connect_handler.go 2KB
Dockerfile 407B
.gitignore 267B
conf
app_config.go 3KB
README.md 3KB
main.go 4KB
共 17 条
- 1
资源评论
生瓜蛋子
- 粉丝: 3828
- 资源: 5775
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- pod-tomcat.yaml
- This module implements the Requests API.
- Delphi 12 控件之unidac-10.2.1-d29pro.exe
- keyword.other.package.java
- Apple//DTD PLIST 1.0//EN
- comment.block.documentation.rust
- there is no way to distinguish perfectly
- 数据库管理工具:dbeaver-ce-24.0.2-x86-64-setup.exe
- Objective-C.tmLanguage
- 数据库管理工具:dbeaver-ce-24.0.2-macos-x86-64.dmg
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功