DNS Server/FRP
DNS server
docker image: andyshinn/dnsmasq
docker run -d -p 53:53/tcp -p 53:53/udp --cap-add=NET_ADMIN --name dns-server andyshinn/dnsmasq
docker exec -it dns-server sh
/etc/resolv.conf
nameserver 114.114.114.114
nameserver 1.1.1.1
/etc/dnsmasq.d/address.conf
address=/domains.cn/192.168.24.200
FRP转发
下载:https://github.com/fatedier/frp/releases/download/v0.29.0/frp_0.29.0_linux_amd64.tar.gz
支持:Win、Linux、Mac
服务端(公网服务器)
[common]
bind_port = 7000 #与客户端绑定的进行通信的端口
vhost_http_port = 7001 #访问客户端web服务自定义的端口号
[ssh]
listen_port = 7002
auth_token = xxxxxxxxxxx
[web]
type = http
custom_domains = xx.xxxxx.cn
[web2]
...
启动:nohup ./frps -c ./frps.ini &
配置客户端(内网服务器)
[common]
server_addr = #公网服务器ip
server_port = 7000 #与服务端bind_port一致
auth_token = xxxxxxxxxxx
#公网通过ssh访问内部服务器[不需要可以去掉]
[ssh]
type = tcp #连接协议
local_port = 22 #ssh默认端口号
remote_port = 7002 #自定义的访问内部ssh端口号
#公网访问内部web服务器以http方式
[web]
type = http #访问协议
local_port = 80 #内网web服务的端口号
custom_domains = son.domain.com #所绑定的公网服务器域名,一级、二级域名都可以
[web2]
...
启动:nohup ./frpc -c ./frpc.ini &
所有配置见:frpc_full.ini
、frps_full.ini
服务端共用80端口:
proxy_pass端口号为服务端vhost_http_port
server {
listen 80;
server_name son.domain.com;
location / {
proxy_pass http://127.0.0.1:7001;
proxy_set_header Host $host;
proxy_set_header Remote_Addr $remote_addr;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $remote_addr;
}
}
其他配置详见:https://blog.csdn.net/jackymvc/article/details/80594619