여러 가상 머신 대신 하나의 가상 머신에 여러 LAN 인터페이스

여러 가상 머신 대신 하나의 가상 머신에 여러 LAN 인터페이스

Linux 배포판의 특정 사용자에게만 네트워크 인터페이스를 사용하도록 허용하는 권한을 부여할 수 있는지 알아보고 있습니다.

내 사용 사례: 내 연구를 위해 모두 동일한 포트에서 수신 대기하는 약 30개 서버 간의 상호 연결을 테스트하고 싶습니다. 현재는 물리적 제한으로 인해 7~8개의 VM만 전원을 켜고 해당 VM에서 서버 스크립트를 시작할 수 있습니다. SliTaz와 같이 리소스 소비가 적은 Linux 배포판을 사용하고 있지만. 이러한 스크립트를 사용하려면 모두 동일한 포트에서 수신 대기하므로 여러 인터페이스가 필요합니다.

내가 할 수 있다고 생각하는 것은 단일 가상 머신에 이더넷 인터페이스를 복제(30회)하고, 30명의 서로 다른 사용자를 생성하고, 각 사용자에 대해 서로 다른 이더넷 인터페이스를 설정하고, 각 사용자에 대해 서버 스크립트를 시작하는 것입니다. 스크립트는 사용 가능한 모든 인터페이스 또는 각 사용자가 사용할 수 있는 단일 인터페이스를 수신합니다. 내 스크립트에는 약 5Mo의 RAM이 있으므로 30*128Mo의 VM을 가동할 필요가 없으며 VM을 복제하고 각 VM에 MAC 주소와 IP를 설정하는 대신 더 쉽게 사용자를 생성할 수 있습니다.

여러 인터페이스를 만들 수 있다는 것을 알 수 있습니다. 특정 사용자의 네트워크 인터페이스에 대한 권한을 설정하는 방법은 무엇입니까? 아니면 이 문제에 대한 더 나은 해결책이 있습니까?

답변1

리소스 집약도가 낮은 가상화 옵션을 사용할 가능성을 고려해야 합니다. 귀하의 문제를 해결하기 위해 제가 생각한 것은 "네트워크 네임스페이스"입니다. 여기에서 간단하면서도 충분한 소개를 찾을 수 있습니다.여기.

이 최소한의 가상화 방식을 사용하면 각 쉘에 (가상!) NIC를 더도 덜도 없이 제공할 수 있습니다. 오버헤드는 각 사용자에 대해 새 셸을 생성하고 모든 프로그램을 계속 사용할 수 있도록 하는 것입니다. 그런 다음 다른 인터페이스의 동일한 포트를 수신하는 동일한 프로그램의 다른 인스턴스를 시작할 수 있습니다.

관련 정보