Hetnzer Proxmox 开 ipv4 NAT + 独立ipv6 小鸡教程

Hetzner - A-Triad

网上有很多教程了,但这几天试下来,ipv4 NAT 没有问题,但独立ipv6一直不好用,有说直接 PVE 直接加一块儿 vmbr0 的网卡,然后就被HZ滥用警告了2333,最终沿袭这位老哥的思路https://www.liujason.com/article/477.html,终于搞定了 ipv6 的问题,目前使用一切正常。

下面贴一下母鸡的网络架构以及一些具体配置

母鸡网络基本架构

  • enp9s0:物理网卡,空
  • vmbr0:物理网卡桥接——公网IPv4+公网IPv6
  • vmbr1:物理vLAN网卡桥接——内网IPV4+公网IPv6(无gateway)

下面是网卡具体配置

Hetzner Online GmbH installimage

source /etc/network/interfaces.d/*

auto lo
iface lo inet loopback
iface lo inet6 loopback

auto enp9s0
iface enp9s0 inet manual
#  post-up /sbin/ethtool -K enp9s0 tx off rx off
iface enp9s0 inet6 manual

auto vmbr0
iface vmbr0 inet static
address 母鸡ip
netmask 子网掩码
gateway 网关ip
pointopoint 同上网关ip
hwaddress ether MAC地址
bridge_ports enp9s0
bridge_stp off
bridge_fd 0
bridge_maxwait 0
# post-up /sbin/ethtool -K vmbr0 tx off rx off

iface vmbr0 inet6 static
address 母鸡v6地址  #例子 2a01:abc:abc:abc::2
netmask 64                #64或者128,看你之前的网络参数
gateway fe80::1         #网关
bridge_ports enp9s0
bridge_stp off
bridge_fd 0
up ip -6 route del 2a01:abc:abc:abc::/64 dev vmbr0   #这个是你母鸡ipv6的网段,含义说明下面有写

auto vmbr1
iface vmbr1 inet static
address 192.168.1.1
netmask 255.255.255.0
bridge_ports none
bridge_stp off
bridge_fd 0
post-up echo 1 > /proc/sys/net/ipv4/ip_forward
post-up iptables -t nat -A POSTROUTING -s '192.168.1.0/24' -o vmbr0 -j MASQUERADE
post-down iptables -t nat -D POSTROUTING -s '192.168.1.0/24' -o vmbr0 -j MASQUERADE

auto vmbr1
iface vmbr1 inet6 static
address  另一个ipv6地址 # 例子 2a01:abc:abc:abc::3/64   
#gateway fe80::1
bridge_ports none
bridge_stp off
bridge_fd 0
up ip -6 route add 2a01:abc:abc:abc::/64 dev vmbr1
post-down ip -6 route del 2a01:abc:abc:abc::/64 dev vmbr1

这里面

 

up ip -6 route add 2a01:abc:abc:abc::/64 dev vmbr1

是让所有的ipv6流量走vmbr1,才能将ipv6流量转发出去

 

up ip -6 route del 2a01:abc:abc:abc::/64 dev vmbr0

是将2a01:abc:abc:abc::/64从vmbr0网桥中去掉

这里额外在提一下up post-down是干啥的

  • pre-up 网卡启用前的动作
  • up 启用时候的动作
  • post-up 启用后的动作
  • pre-down 关闭前的动作
  • down 关闭时动作
  • post-down 关闭后动作

配置一下转发

编辑

/etc/sysctl.conf

加入

 

net.core.default_qdisc=fq
net.ipv4.tcp_congestion_control=bbr 
net.ipv4.ip_forward=1
net.ipv6.conf.all.accept_dad = 1
net.ipv6.conf.all.accept_ra = 0
net.ipv6.conf.all.accept_redirects = 1
net.ipv6.conf.all.accept_source_route = 0
net.ipv6.conf.all.autoconf = 0
net.ipv6.conf.all.disable_ipv6 = 0
net.ipv6.conf.all.forwarding=1

上面两行是开启BBR,下面是相关转发

保存生效

sysctl -p

重启网络服务

systemctl restart networking.service

查看网络状态

systemctl status networking.service

如果你在配置桥接网络这块配完了重启网络服务失败但是机器还有网,那么恭喜你还可以继续折腾,也就是你还可以继续修改网卡的配置文件,但如果你想让你新修改的配置生效就得用下面这条命令强制重启vmbr0(networking restart是没用的):

 

ifdown --force vmbr0 && ifup --force vmbr0

确认好全部完成之后,重启母鸡

 

reboot

检查下路由

 

ip -6 route

长这样就ok了

 

::1 dev lo proto kernel metric 256 pref medium
2a01:abc:abc:abc::/64 dev vmbr1 proto kernel metric 256 linkdown pref medium
2a01:abc:abc:abc::/64 dev vmbr1 metric 1024 linkdown pref medium
fe80::/64 dev vmbr0 proto kernel metric 256 pref medium
fe80::/64 dev vmbr1 proto kernel metric 256 linkdown pref medium
default via fe80::1 dev vmbr0 metric 1024 onlink pref medium

小鸡网卡配置

v4填192.168.1.x ,别是网关就行,网关 是 192.168.1.1,另外记得填上dns 8.8.8.8.8

v6填2a01:abc:abc:abc::xxxx,xxxx别是网关就行, 网关是 2a01:abc:abc:abc::3,DNS填Google的,2001:4860:4860::8888

母鸡NAT转发小鸡

iptables -t nat -A PREROUTING -p tcp -m tcp --dport 23333 -j DNAT --to-destination 192.168.1.2:22

把母鸡端口23333,转发到IP为192.168.1.2的小鸡端口22上,这样访问母鸡的公网IP+23333端口就相当于访问了这台小鸡的22端口

 

ipv6直接连就行了,连接地址就是小鸡v6地址

 

链接:https://bbbe.top/archives/184.html
来源:随风的博客
文章版权归作者所有,未经允许请勿转载。
本网站使用者因为违反本声明的规定而触犯中华人民共和国法律的,一切后果自己负责,本网站不承担任何责任。
本声明未涉及的问题参见国家有关法律法规,当本声明与国家法律法规冲突时,以国家法律法规为准。
本文仅供学习参考,请勿用于违法用途。 若根据文章内容操作遭受任何损失,请自行承担责任。
THE END
分享
二维码
打赏
< <上一篇
下一篇>>
文章目录
关闭
目 录