다양한 프로세스에 대해 다양한 가상 네트워크 인터페이스를 사용하는 방법은 무엇입니까?

다양한 프로세스에 대해 다양한 가상 네트워크 인터페이스를 사용하는 방법은 무엇입니까?

비가상 네트워크 인터페이스에 대한 솔루션은 다음과 같습니다.https://unix.stackexchange.com/a/210992

하지만 문제는 하나의 네트워크 인터페이스에 여러 개의 IP가 있고 각 IP를 다른 애플리케이션에 할당할 수 있기를 원한다는 것입니다.

예를 들어 eth0:0, eth0:1 등이 있습니다.

명령을 실행할 때(가상 인터페이스 참고):

ip link set eth0:0 netns test_ns

eth0:0 대신 eth0 ip가 필요합니다. 또한 전체 인터페이스를 없애고 공개 소스에서 연결할 수 없습니다.

공통 소스에서 서버에 액세스하면서 다양한 프로세스에 가상 네트워크 인터페이스를 사용할 수 있는 방법이 있습니까?

답변1

유사한 인터페이스 이름은 eth0:0다른 인터페이스("가상 또는 비가상")를 나타내지 않지만 동일한 인터페이스에 대한 별칭입니다. 별칭은 ifconfig와 같은 오래되고 더 이상 사용되지 않는 도구가 동일한 인터페이스 이름을 사용하여 여러 주소를 할당할 수 없기 때문에 필요합니다.

편집: veth인터페이스 쌍을 사용하여 두 개의 네트워크 네임스페이스를 연결할 수 있습니다.

sudo ip link add ns1_eth type veth peer name veth0

반대편을 ns1사이버 공간으로 이동:

sudo ip link set ns1_eth netns ns1

veth은 튜브처럼 작동하며 한쪽 끝에서 보낸 내용이 다른 쪽 끝에서 나타납니다. 위의 명령 외에도 주소 지정 및 라우팅도 설정해야 합니다.

관련 정보