在CentOS中使用VirtualBox進行端口轉發的步驟如下:
echo 1 > /proc/sys/net/ipv4/ip_forward
vi /etc/sysctl.conf
在文件中找到 net.ipv4.ip_forward
這一行,將其值改為 1
,然后執行以下命令使更改立即生效:
sysctl -p
172.16.4.247:728
的流量轉發到內部 IP 172.16.4.97:80
,可以使用以下 iptables
命令:iptables -t nat -A PREROUTING -p tcp -d 172.16.4.247 --dport 728 -j DNAT --to-destination 172.16.4.97:80
iptables -t nat -A POSTROUTING -p tcp -s 172.16.4.97 --sport 80 -j SNAT --to-source 172.16.4.247
/etc/sysconfig/iptables
文件:-A PREROUTING -d 172.16.4.247/32 -p tcp -m tcp --dport 728 -j DNAT --to-destination 172.16.4.97:80
-A POSTROUTING -s 172.16.4.97/32 -p tcp -m tcp --sport 80 -j SNAT --to-source 172.16.4.247
728
端口:-A INPUT -p tcp -m state --state NEW -m tcp --dport 728 -j ACCEPT
service iptables restart
http://ip:729
時想返回 http://ip:80
的內容,可以使用以下命令:iptables -t nat -A PREROUTING -p tcp --dport 729 -j REDIRECT --to-ports 80
service iptables save
service iptables restart
telnet
或 nc
命令驗證端口轉發是否成功。例如,如果你轉發了SSH的 22
端口,可以在宿主機上使用:telnet 127.0.0.1 12222
其中 12222
是你設置的主機端口。
請注意,進行端口轉發時,確保主機端口沒有被其他服務占用,并且防火墻設置允許端口轉發。