云计算百科
云计算领域专业知识百科平台

记录:利用服务器 IPV4转IPV6

出门在只有IPV4但是需要访问家里的IPV6设备,简单的利用服务中转

首先有一台拥有IPV6和IPV4的服务器。在服务器上执行

curl https://ipv6.ddnspod.com/

docker默认不开启IPV6,需要手动开启(没有使用docker的略过相关部分,自行配置nginx)

vi /etc/docker/daemon.json

按i键,然后粘贴下面的代码

{
"ipv6": true,
"fixed-cidr-v6": "2001:db8:1::/64" // 确保这个范围没有和现有的网络冲突
}

输入":wq"回车(注意冒号)

然后重启 Docker 服务:

sudo systemctl restart docker

确认 Docker 网络的 IPv6 配置

docker run -it –network bridge alpine sh

# aws
ping6 google.com

# 阿里云
ping -6 aliyun.com

# 会输出相关信息
PING google.com (2404:6800:4004:801::200e): 56 data bytes
64 bytes from 2404:6800:4004:801::200e: seq=0 ttl=116 time=1.247 ms

在docker上安装nginx的ui版。docker-compose.yml文件的代码

version: '3.0'
services:
app:
image: 'jc21/nginx-proxy-manager:2.9.14'
restart: unlessstopped
container_name: nginxproxymanager #容器名称
ports:
'80:80'
'81:81'
'443:443'
volumes:
/root/software/nginxproxymanager/data:/data
/root/software/nginxproxymanager/html:/data/html
/root/software/nginxproxymanager/letsencrypt:/etc/letsencrypt
networks:
nginx-proxy-manager-network:
ipv6_address: "2001:db8:2::2" # 可选,手动指定 IPv6 地址

networks:
nginx-proxy-manager-network:
driver: bridge
enable_ipv6: true
ipam:
config:
subnet: "2001:db8:2::/64" # 设置 IPv6 子网

把文件上传到服务器指定目录,在指定目录下执行。(没有安装docker-compose的自行安装)

docker-compose up -d

步骤 1:访问 Nginx Proxy Manager UI

  • 打开浏览器并进入 NPM 的管理界面。
  • 登录到 Nginx Proxy Manager。

步骤 2:添加或编辑代理主机 (Proxy Host)

  • 在 NPM 的侧边栏中选择 Proxy Hosts。
  • 点击 Add Proxy Host 创建一个新的代理主机,或者选择现有的代理主机并点击 Edit 进行编辑。

步骤 3:配置代理主机的域名和目标服务

Domain Names 1. 在 Domain Names 字段中,输入客户端访问的域名或 IP 地址(即面向客户端的 IPv4 地址或域名)。

  • 这是客户端使用 IPv4 访问的入口。例如 example.com 或 192.0.2.1。

Scheme 2. 在 Scheme 下拉列表中,选择协议:

  • 如果后端服务器使用 HTTP,请选择 http。
  • 如果后端服务器使用 HTTPS,请选择 https。

Forward Hostname / IP 3. Forward Hostname / IP 字段中,输入你后端服务器的 域名,该域名解析为 IPv6 地址。

  • 例如:ipv6.example.com。
  • Nginx 将会解析这个域名并与后端服务器通过 IPv6 建立连接。

Forward Port 4. 在 Forward Port 中输入后端服务器的端口号。

  • 例如,如果你的后端服务监听 80 端口,则输入 80,如果监听 443 端口,则输入 443。

步骤 4:高级设置 (Custom Nginx Configuration)

如果你希望进行进一步的自定义配置,例如控制客户端请求头或其他高级设置,可以进入高级设置:

  • 点击页面上的 Advanced 标签。
  • 在 Custom Nginx Configuration 部分中,你可以根据需要输入自定义 Nginx 配置。不过,在大多数情况下,默认设置已经足够。
  • 例如,如果你希望明确设定 Nginx 在使用 IPv6 转发请求时的行为,可以添加如下配置:

    proxy_set_header Host $host;
    proxy_set_header X-Real-IP $remote_addr;
    proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
    proxy_set_header X-Forwarded-Proto $scheme;

    这些设置会确保 Nginx 保留客户端的原始请求信息,如 Host 和 IP 地址。

    赞(0)
    未经允许不得转载:网硕互联帮助中心 » 记录:利用服务器 IPV4转IPV6
    分享到: 更多 (0)

    评论 抢沙发

    评论前必须登录!