
소켓을 통해 패킷을 캡처하고 있습니다. 캡처된 패킷을 읽는 동안 VLAN 태그가 제거된다는 것을 깨달았습니다. 인터넷 서핑 후 Linux 배포판 자체에서 VLAN 태그를 제거하는 방법에 대한 내용을 읽었습니다. 여기에 빛을 밝히고 싶은 사람이 있나요?
답변1
일반적으로 802.1q 태깅은 네트워크 클라이언트에는 필요하지 않으며 스위치 및 스위치 간/라우터/방화벽 구성에만 필요하므로 Linux 세계에서는 기본적으로 활성화되지 않습니다. 그러나 물론 Linux 서버를 방화벽으로 설정하거나 예를 들어 라우팅을 수행할 수 있으므로 이러한 경우 스위치가 Linux 서버에서 나오는 트래픽을 어디로 보낼지 알 수 있도록 태그가 지정된 패킷을 유지하려고 합니다.
Ubuntu에는 802.1q를 인식하는 VLAN을 지원하는 장치와 드라이버가 필요합니다. 인터페이스 구성을 활성화하려면 사용자 공간 도구 VLAN을 설치해야 합니다.
sudo apt-get install vlan
그런 다음 모듈을 로드해야 합니다.
sudo modprobe 8021q
그런 다음 물리적 인터페이스를 VLAN 인터페이스에 추가해야 합니다(Vlan에 대한 새 하위 인터페이스가 생성됨).
sudo vconfig add eth1 10
그런 다음 마지막으로 하위 인터페이스에 대한 IP 주소를 만듭니다.
sudo ip addr add 10.0.0.1/24 dev eth1.10
이것을 영구적으로 만들고 싶다면:
부팅 시 커널에 모듈을 추가합니다.
sudo su -c 'echo "8021q" >> /etc/modules'
그런 다음 /etc/networking/interfaces에 스탠자를 생성합니다.
auto eth1.10
iface eth1.10 inet static
address 10.0.0.1
netmask 255.255.255.0
vlan-raw-device eth1