
나는 unshare
컨테이너를 더 잘 이해하기 위해 놀고 있습니다. 일반 사용자로서 프로그램이 포트를 수신할 수 있는 네임스페이스를 만들고 123
"기본" 네임스페이스에서 포트가 1234
리디렉션되는 것이 가능합니까 ?
Podman은 루트가 없는 컨테이너 엔진이고 이를 수행할 수 있기 때문에 그래야 한다고 생각합니다. 보는 것은 man veth
도움이 되지 않았습니다.
답변1
Podman은 다음을 사용하여 작동합니다.slirp4netns관리하기 위해탭 장치권한이 없는 컨테이너 내부. slirp4netns에 대한 README에서:
Linux 3.8부터 권한이 없는 사용자
network_namespaces(7)
도user_namespaces(7)
. 그러나 권한이 없는 네트워크 네임스페이스는 별로 유용하지 않았습니다.veth(4)
호스트와 네트워크 네임스페이스에 걸쳐 쌍을 만들려면 여전히 루트 권한이 필요하기 때문입니다. (즉, 인터넷에 연결되어 있지 않음)slirp4netns를 사용하면 네트워크 네임스페이스의 TAP 장치를 사용자 모드 TCP/IP 스택("slirp")에 연결하여 완전히 권한이 없는 방식으로 네트워크 네임스페이스를 인터넷에 연결할 수 있습니다.
목표를 달성하려면 비슷한 작업을 수행해야 합니다.