阿里云服務(wù)器ECS實(shí)例上自建SNAT后無法訪問公網(wǎng)的解決方法
問題描述
同一VPC的兩臺ECS實(shí)例,即A實(shí)例和B實(shí)例,A實(shí)例有公網(wǎng)地址,B實(shí)例沒有公網(wǎng)地址。在A實(shí)例上配置好SNAT規(guī)則,且在B實(shí)例上將路由指向A實(shí)例后,B實(shí)例還是無法訪問公網(wǎng)。
解決方案
阿里云提醒您:
?如果您對實(shí)例或數(shù)據(jù)有修改、變更等風(fēng)險(xiǎn)操作,務(wù)必注意實(shí)例的容災(zāi)、容錯(cuò)能力,確保數(shù)據(jù)安全。
?如果您對實(shí)例(包括但不限于ECS、RDS)等進(jìn)行配置與數(shù)據(jù)修改,建議提前創(chuàng)建快照或開啟RDS日志備份等功能。
?如果您在阿里云平臺授權(quán)或者提交過登錄賬號、密碼等安全信息,建議您及時(shí)修改。
1.從B實(shí)例中ping A實(shí)例的公網(wǎng)地址,然后在兩臺實(shí)例中使用tcpdump命令抓包,發(fā)現(xiàn)A實(shí)例收到了公網(wǎng)地址的ICMP reply包,而B實(shí)例沒有收到ICMP reply包。
2.在A實(shí)例中,執(zhí)行以下命令,發(fā)現(xiàn)FORWARD鏈默認(rèn)規(guī)則是DROP,導(dǎo)致ICMP reply包被丟棄。
iptables -nvL
說明:若執(zhí)行iptables -nL命令,無法查看in和out參數(shù)。
3.執(zhí)行以下命令,設(shè)置FORWARD鏈的默認(rèn)規(guī)則為ACCEPT。
iptables -P FORWARD ACCEPT
4.執(zhí)行以下命令,確認(rèn)修改成功。
iptables -nvL
系統(tǒng)顯示類型如下。
適用于
?云服務(wù)器ECS
?輕量應(yīng)用服務(wù)器
