
我的設定
1. 建立一個 VPC (poller-vpc)
2. 建立兩個子網路(私有子網路[0.0.1.0/27]、公有子網路[0.0.1.32/27])
3. 新增防火牆規則(tcp、 udp、icmp for 0.0.0.0/0 for vpc-poller 網路)
4. 在具有私有/公用 IP 的公用子網路中建立“nat-instance”,可以轉送 ip 且 tag =“nat”
5. 在具有私有/公用IP 的私有子網路中建立「test-instance」僅私有 IP,具有 tag =「no-ip」
6. 為目標(0.0.0.0/0) 建立路由,tags =「no-ip」且下一跳實例=“nat-instance”
7. 登入“ nat-instance" 並執行["sudo sysctl -w net.ipv4.ip_forward=1", "sudo iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE"]
8. 然後 ssh 進入私有實例並嘗試 apt update 但無法透過 nat 從私有實例連接到網際網路。
我關注了 cloud.google.com/vpc/docs/special-configurations
謝謝阿尤什
答案1
1 - 依照中的步驟操作後您提供的頁面,我能夠透過 SSH 存取 NAT 網關虛擬機器實例。
我已經運行了這個命令:
$ gcloud compute ssh nat-gateway --zone us-central1-a
2 - 從該 NAT 閘道虛擬機器實例,我能夠透過 SSH 存取內部虛擬機器實例
$ gcloud beta compute ssh [INTERNAL_INSTANCE_NAME] --internal-ip
3 - 從那裡,我能夠連接到公共互聯網。我已經運行了 apt-get 命令。這對我有用。
如果您按照本文中的相同步驟操作,它應該會起作用。
如果仍然不起作用,那麼您應該使用預設網路命令進行故障排除,例如traceroute
查看封包所經過的躍點。