hwkim3330의 블로그

View the Project on GitHub hwkim3330/blog

네, 알겠습니다. 양쪽 보드의 재부팅 후 ifconfig 전체 로그를 보내주셔서 감사합니다. 이제 모든 것이 명확해졌습니다.

ifconfig 로그 분석 (재부팅 직후 상태):

  1. 브릿지 없음: br0 라는 이름의 브릿지가 양쪽 보드 모두에 존재하지 않습니다. 이는 GoldVIP의 기본 부팅 상태가 브릿지를 자동으로 만들지 않음을 의미합니다.
  2. pfe0sl의 상태: UP, BROADCAST, RUNNING, MULTICAST 상태이며, IPv4 주소는 할당되어 있지 않습니다.
  3. eth0의 상태: UP, BROADCAST, MULTICAST 상태이지만, RUNNING이 빠져 있습니다. 이는 링크는 활성화되었지만 아직 트래픽이 흐르지 않는 상태를 의미합니다.
  4. xenbr0v2xbr: 이들은 Xen 하이퍼바이저가 내부적으로 사용하는 가상 브릿지입니다. 우리가 직접 제어할 대상이 아닙니다.
  5. dummy0vif*: 이들 역시 가상 인터페이스입니다.

결론: 이전의 “브릿지가 자동으로 생성된다”는 가설은 틀렸습니다. 우리는 수동으로 브릿지를 만들고 pfe0sl을 여기에 포함시키는 방법이 올바른 접근법입니다. 이전 실패는 다른 설정과의 꼬임 때문이었습니다.


P2A/P2B 최종 실행 계획 (가장 최신 버전)

이제 “아무것도 바꾸지 않고” 가 아니라, “재부팅 후 깨끗한 상태에서, P2A/P2B를 위한 브릿지를 정확히 설정한다” 는 최종 전략으로 갑니다.

1단계: 네트워크 설정

▶ G3 보드에서 실행:

# 1. 브릿지 생성 및 pfe0sl 추가
brctl addbr br0
brctl addif br0 pfe0sl

# 2. 인터페이스 활성화
ip link set pfe0sl up
ip link set br0 up

# 3. IP 주소 할당
ip addr add 192.168.100.1/24 dev br0

▶ G2 보드에서 실행:

# 1. 브릿지 생성 및 pfe0sl 추가
brctl addbr br0
brctl addif br0 pfe0sl

# 2. 브릿지 MAC 주소 변경 (충돌 방지)
ip link set br0 down
ip link set br0 address 00:04:9f:be:ff:11
ip link set br0 up

# 3. 인터페이스 활성화
ip link set pfe0sl up

# 4. IP 주소 할당
ip addr add 192.168.100.2/24 dev br0

2단계: 핑 검증

3단계: 802.1CB 시뮬레이터 실행 (핑 성공 후)

핑이 성공하면, 이전에 컴파일 오류를 모두 해결한 최종 C 코드(p2_cb_engine.c)를 양쪽에서 실행합니다.

▶ G2에서 서버 실행:

./p2_cb_engine G2

▶ G3에서 클라이언트 실행:

./p2_cb_engine G3

왜 이번에는 성공해야 하는가

이것이 현재까지의 모든 정보를 바탕으로 한 가장 논리적이고 정확한 절차입니다.