본문 바로가기

Engineering/Network

bridge 인터페이스의 slave 인터페이스 확인

728x90
bridge 인터페이스의 slave 인터페이스들을 확인하기 위해 ioctl() 함수를 찾아보았으나, BSD 계열에서는 SIOCBRDGIFS 가 보였는데 redhat(centos) 쪽에서 쉽게 예제가 안보였다.

물론 "brctl show br명"으로 가능하기는 하나, 화면 출력값이 여러 라인으로 출력된다.
brctl 소스를 확인해보면 인터페이스 리스트를 확인하는 api 가 존재할거 같으나 찾기가 쉽지 않았다.

그래서, 다른 방법을 사용했는데, /sys/class/net/brXXX 디렉토리를 확인해보자. /sys/class/net/brXXX/brif 에 slave 인터페이스의 링크 디렉토리가 존재한다.

# ls /sys/class/net/br0/brif
eth2 eth3

 사실 brctl 라이브러리 소스를 직접 확인해봐도 /sys/class/net/ 를 하드코딩해서 사용하는 함수가 몇몇 군데 보인다.