시작된 계정을 기반으로 애플리케이션을 네트워크 인터페이스에 자동으로 바인딩

시작된 계정을 기반으로 애플리케이션을 네트워크 인터페이스에 자동으로 바인딩

저는 다른 계정에서 시작된 응용 프로그램이 특정 네트워크 인터페이스에 자동으로 바인딩되도록 하는 방법을 찾고 있습니다. 예를 들어 accountA에서 시작된 애플리케이션은 eth0에 바인딩되고 accountB에서 시작된 애플리케이션은 eth1에 바인딩됩니다. 이 작업을 수행할 수 있는 방법이 있나요? 이것이 더 이해하기 쉽기를 바랍니다. 누군가와 전용 서버를 공유하려고 하기 때문에 이 작업을 수행하고 싶습니다. 계정별 IP를 가질 수 있다면 모든 애플리케이션을 바인딩하려고 애쓰는 번거로움 없이 동일한 포트가 필요한 서비스를 둘 다 실행할 수 있다면 유익할 것입니다.

답변1

먼저 자체 라우팅 테이블을 사용하여 모든 인터페이스를 구성해야 합니다(/etc/iproute2/rt_tables 참조). 그런 다음 UID를 기반으로 트래픽을 표시해야 합니다. 이를 위해서는 ipt_owner 모듈을 사용하십시오. 그런 다음 이러한 표시(fwmark)에 대한 라우팅 규칙을 추가합니다. 다음과 같은 운동을 시작하는 것이 좋습니다.Linux 고급 라우팅 및 트래픽 제어 방법

관련 정보