Linux

CAP_NET_RAW 和 net.ipv4.ping_group_range 有什麼關係?

  • February 19, 2021

根據 buildah 文件,我正在使用無根容器,

此外,**從無根容器 ping 不起作用,因為它缺乏CAP_NET_RAWping 命令所需的安全功能。**如果要從無根容器內 ping,可以允許使用者使用以下sysctl命令發送 ICMP 數據包:

# sysctl -w "net.ipv4.ping_group_range=0 2000000" 

此操作將允許這些組中的任何程序發送 ping 數據包。

我執行了那個 sysctl 命令,並檢查了它所說的容器的權限,

Current IAB: ... !cap_net_raw ...

所以如果你設置net.ipv4.ping_group_range不需要這個功能?這兩者有什麼關係?

沒有直接關係。CAP_NET_RAW是一種允許使用原始和數據包套接字並綁定到任何地址以進行透明代理的功能ping_group_range是一個sysctl 定義允許打開 ICMP 回顯套接字的組範圍。

這兩者都可用於允許ping發送和接收 ICMP 回顯數據包,但它們不是彼此的超集或子集。

引用自:https://unix.stackexchange.com/questions/635409