CodingBox Q&A Ask question

Fortinet 25G DAC, 같은 기종 FortiSwitch끼리는 링크업되는데 FS2048-FS648 간은 안 됨

Asked Active Viewed 200 AI translation from English
7

집선 랙 두 개를 FortiSwitch로 통합하는 작업 중인데, 마지막으로 남은 게 인접 랙에 있는 FS2048과 FS648 사이의 25G 연결입니다. 나머지는 전부 한 번에 올라왔는데 이 링크 하나만 말을 안 듣네요.

  • FortiSwitch 2048, 25G 전면 포트
  • FortiSwitch 648, 25G 전면 포트
  • Fortinet FN-CABLE-SFP28-5 패시브 DAC, 정품 케이블, 서드파티 아님
  • 두 포트 다 VLAN 설정 말고는 손댄 게 없음

지금 상태:

FS2048 port: down, no rx/tx counters moving
FS648  port: down, no rx/tx counters moving
same FN-CABLE-SFP28-5 between two FS648 units: up at 25G, stable

이미 해본 것:

  • 같은 박스에 있던 FN-CABLE-SFP28-5 두 번째 케이블로 교체, 변화 없음
  • 양쪽 끝을 각 섀시의 다른 25G 포트로 옮김, 변화 없음
  • 동일한 FS648 두 대 사이에 연결해서 케이블이 멀쩡하다는 걸 확인, 거기선 바로 올라옴

케이블도 멀쩡하고 포트도 멀쩡한데 조합이 문제네요. 링크가 트레이닝되려면 두 기종의 25G 포트 사이에 뭔가 맞춰야 하는 게 있는 건가요?

Comments 6

Accepted answer

바로 그겁니다. 두 섀시가 서로 다른 ASIC, PHY 세대로 만들어져서 25G에서 각자 알아서 정하는 오류 정정 방식이 양쪽이 다릅니다. 그래서 링크 트레이닝이 끝까지 안 가요. 결과는 깔끔한 down/down이고 로그에는 씹을 게 아무것도 안 남죠.

양쪽 포트에 FEC 모드를 손으로 같게 고정하세요.

config switch physical-port
    edit "port47"
        set fec-state cl91
    next
end

FS2048과 FS648 양쪽에서, 각자의 포트 이름으로 설정하면 됩니다. CL91은 Reed-Solomon 방식이고 CL74 firecode보다 정정 능력이 더 좋긴 한데, 둘 중 뭘 고르는지는 별로 안 중요하고 양쪽을 똑같이 맞추는 게 중요합니다. 두 PHY가 완전히 동일한 방식으로 인코딩·디코딩해야 트레이닝이 끝나는데, 서로 다른 PHY 계열에서 "auto"는 동일한 방식이 아니거든요.

두 번째 쪽까지 설정을 넣는 순간 바로 올라올 겁니다. 나중에 세 번째 기종을 섞게 되면 거기도 기본값이 알아서 맞을 거라 기대하지 말고 명시적으로 설정하세요.

5 IndiagigengIN Show original (English) AI translation

동일 기종끼리는 링크되고 다른 기종 사이에서는 죽는 케이블이라면, 물리 계층에서 뭔가 합의가 안 되는 거고 25G 동축에서는 거의 항상 FEC 문제입니다.

일단 두 포트에 fec-state가 지금 뭘로 설정돼 있는지부터 올려주세요. FortiSwitch 세대마다 기본값이 다르고, 지금 연결하는 두 기종은 ASIC/PHY 계열 자체가 다르니까 "양쪽 다 공장 초기값"이 "양쪽 다 같은 설정"을 의미하지는 않습니다.

두 포트 값이 다르게 나오면 다른 거 건드리기 전에 답이 나온 겁니다.

0 KazakhstannetopsKZ Show original (English) AI translation

양쪽 다 손댄 거 없어서 두 포트 다 이미지 기본값 그대로입니다. FS2048 쪽은 이렇게 비어 있어요.

config switch physical-port
    edit "port47"
    next
end

FS648도 동일합니다. 속도랑 auto-negotiation도 안 건드렸고, VLAN만 맞는 걸로 넣었습니다. 기종마다 기본값이 다르다면 왜 같은 케이블이 동일한 박스 두 대 사이에서는 멀쩡한지 설명이 되네요.

1 South Koreawaverunner63KR Show original (English) AI translation

참고 삼아 말씀드리면 Fortinet이랑 전혀 상관없는 데서도 같은 부류의 문제를 겪은 적 있습니다. 25G SFP28 패시브 DAC가 UniFi USW-Pro-Aggregation과 Intel SFP28 카드 꽂은 서버 사이에서는 잘만 링크되는데, MikroTik CCR2004-1G-12S+2XS의 sfp28-2에서는 아예 아무 반응이 없었어요. 양쪽 다 에러 없이 그냥 링크가 안 뜨는 거죠. Ubiquiti UACC-DAC-SFP28-3M이랑 Lenovo 7Z57A03558로도 해봤는데 결과는 같았습니다. 한 번은 포트가 올라왔다가 2초쯤 뒤에 다시 끊긴 적이 있었는데, 그게 케이블이 죽은 게 아니라 뭔가 트레이닝에 실패하고 있다는 힌트였습니다.

여기도 FEC입니다. Ubiquiti 쪽은 FEC를 계속 켜 둔 채로 바꿀 방법이 없고, RouterOS는 6.49에서 기본값이 fec91에서 FEC 없음으로 바뀌었습니다. 여기서 통한 방법은 RouterOS 7.4로 올려서 FEC 옵션이 노출되게 한 다음

/system routerboard upgrade

포트를 fec74로 설정하고 auto-negotiation 끄고, 양방향 flow control 끄고, 25 Gbps full duplex로 고정한 뒤 UniFi 쪽에서 포트 프로파일 오버라이드로 25G FDX를 박아 넣는 거였습니다. 이건 제 하드웨어, 제 펌웨어 기준이니 그대로 따라 하지 마시고 시작점 정도로만 보고 각자 환경에서 확인해보세요.

0 Taiwanlinkeng56TW Show original (English) AI translation

같은 스위치도 어느 벤더 CLI에 있느냐에 따라 다이얼 이름이 다르다는 것도 덧붙일 만합니다. 랙에 벤더가 둘 이상 섞이는 순간 이게 골치 아파지죠. Cisco에서는 Catalyst 9300 스택과 Catalyst 9500 페어 사이 25G 링크에서 양쪽에 fec cl108을 넣어야 올라왔고, 그 9500 페어와 Nexus 9000 사이 100G에서는 양쪽 다 fec off가 답이었습니다. 결정 자체는 같은데 키워드만 다른 거죠.

그리고 FEC가 항상 켜야 하는 쪽인 것도 아닙니다. Nexus 93180YC-EX에 SFP-H25GB-SR을 꽂고 반대편이 Cavium 25G 어댑터인 경우, 스위치 포트는 FEC auto 상태에서 옵틱 때문에 FEC를 기대하는데 NIC 쪽은 FEC 지원 자체가 없다고 보고했습니다. 그래서 양쪽이 합의를 못 하고 모듈은 인식된 채로 인터페이스는 계속 다운이었어요. 이때는 스위치 인터페이스에 fec off가 답이었고, show interface에서 모드가 Auto에서 Off로 바뀌는 걸 확인할 수 있습니다.

그러니까 규칙은 "cl91을 써라"가 아니라 "모드를 정하고 양쪽에 명시적으로 설정해라"입니다.

1 Netherlandsoptichub40NL Show original (English) AI translation

확인했습니다. FS2048 포트에 set fec-state cl91 넣은 것만으로는 아무 변화 없었는데, FS648 포트에도 똑같이 넣으니까 몇 초 만에 링크가 올라왔습니다. 양쪽 카운터 다 움직이고, 두 섀시 다 재부팅해도 그대로 유지되네요.

앞으로 이 페어의 모든 25G 포트는 기본값 믿지 말고 명시적으로 설정하기로 했습니다. 멀쩡한 케이블만 이틀 저녁 내내 바꿔가며 씨름했는데 결국 설정 한 줄이었네요.

4 South Koreawaverunner63KR Show original (English) AI translation
Log in to comment. Log in