1.istio將入站和出站流量全部打入指定端口,那么是如何區(qū)分這些流量的七層是什么協(xié)議?
目標(biāo)端口
2.tproxy為啥對outbound無解?
已經(jīng)解決了 之前是因為output在route之后,現(xiàn)在有reroute check
3.tproxy+sockmap方案原理
fix
4.方案3現(xiàn)在遇到了三個問題
1.在機(jī)器上請求百度,雖然被mesh攔截到了,轉(zhuǎn)發(fā)卻失敗了--解決
2.在另外一臺機(jī)器上直接請求9301非mesh端口,卻收不到請求
3.sockmap還未使用
對于如何攔截請求并轉(zhuǎn)發(fā)給服務(wù)提供方,來說透明代理有以下問題,這個解決了 就可以上ebpf
要去區(qū)分只能代理訪問目標(biāo)系統(tǒng)的端口,但是如何區(qū)分這個是代理的流量?因為我是采用的tproxy,所以我的源ip都是真實的不是本機(jī)的
上述問題可以通過in 是否來自lo網(wǎng)卡 是的話則說明要么是sidecar自己訪問自己 要么是代理系統(tǒng)自己訪問自己 要么就是sidecar訪問代理系統(tǒng)
對于無法區(qū)分進(jìn)入的流量是從其他sidecar發(fā)過來的 還是本地sidecar轉(zhuǎn)發(fā)的 可以通過mark標(biāo)識 有mark的代表是本地sidecar轉(zhuǎn)發(fā)的不走tproxy攔截----iptables -t mangle -I ISTIO_INBOUND 5 -p tcp -m mark --mark 0x539 -j RETURN