Linux 라우터 업링크 인터페이스의 신비한 rx_crc_errors

Linux 라우터 업링크 인터페이스의 신비한 rx_crc_errors

나는 가장자리에 있는 장치와 호스트 컴퓨터 사이에서 라우터 역할을 하는 Debian 11을 실행하는 Linux 컴퓨터를 가지고 있습니다. 파일을 다운로드하라는 명령을 수행하는 동안 curl인터페이스가 가장자리를 향하고 있습니다.rx_crc_errors산발적으로, 그러나 지속적으로 축적되기 시작합니다.- 카운트는 초당 평균 1~2회씩 증가합니다. 결과적으로 이 curl명령은 라우터 뒤에 있는 호스트 시스템 모두에서 매우 느리게 실행되고 회선에서 사용할 수 있는 속도의 일부만 다운로드됩니다. (그리고 동일한 에지 장치를 통과하는 다른 라우터와 서버를 확인했는데 더 빠른 속도로 실행하고 rx_crc_errors를 누적하지 마세요).

에지 라우터(이러한 rx_crc_errors를 축적하는 시스템/인터페이스의 게이트웨이)는 pfSense 22.01(최신)을 실행하는 NetGate 1537입니다.

지금까지 시도한 것:

  • 케이블을 교체했습니다
  • SFP 어댑터를 교체했습니다.
  • 다른 스위치 포트를 사용했습니다.
  • 전체 호스트 시스템을 동일한 구성 중 하나로 교체했습니다.

이들 중 어느 것도 동작을 변경하지 않았으며, 내가 알 수 있는 한 문제의 원인인 하드웨어를 제거했습니다.

curl https://dl.google.com/go/go1.18.1.linux-amd64.tar.gz --output t.dat엣지 머신에서 수행하는 작업은 약 1초 안에 완료됩니다. rx_crc_errors가 있는 라우터에서는 17초가 걸리고 그 뒤에 있는 호스트에서는 21초가 걸립니다.

오류는 업링크 인터페이스에 다음과 같이 표시됩니다.

...
2: enp3s0f0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq state UP mode DEFAULT group default qlen 1000
    link/ether 10:1f:74:35:fc:94 brd ff:ff:ff:ff:ff:ff
    RX: bytes  packets  errors  dropped missed  mcast
    1609100899 1250023  508     0       0       2534
    TX: bytes  packets  errors  dropped carrier collsns
    20574398   206727   0       0       0       0
...

그런 다음 ethtool을 사용하면 CRC 오류( rx_crc_errors: 508) 를 보여주는 추가 세부 정보를 얻을 수 있습니다.

ethtool -S enp3s0f0
NIC statistics:
     rx_bytes: 1609111223
     rx_error_bytes: 0
     tx_bytes: 20588905
     tx_error_bytes: 0
     rx_ucast_packets: 1245869
     rx_mcast_packets: 2554
     rx_bcast_packets: 1687
     tx_ucast_packets: 202770
     tx_mcast_packets: 4038
     tx_bcast_packets: 0
     tx_mac_errors: 0
     tx_carrier_errors: 0
     rx_crc_errors: 508
     rx_align_errors: 0
     tx_single_collisions: 0
     tx_multi_collisions: 0
     tx_deferred: 0
     tx_excess_collisions: 0
     tx_late_collisions: 0
     tx_total_collisions: 0
     rx_fragments: 22
     rx_jabbers: 0
     rx_undersize_packets: 0
     rx_oversize_packets: 0
     rx_64_byte_packets: 1823
     rx_65_to_127_byte_packets: 9084
     rx_128_to_255_byte_packets: 2371
     rx_256_to_511_byte_packets: 585
     rx_512_to_1023_byte_packets: 80
     rx_1024_to_1522_byte_packets: 1236167
     rx_1523_to_9022_byte_packets: 0
     tx_64_byte_packets: 0
     tx_65_to_127_byte_packets: 200168
     tx_128_to_255_byte_packets: 5659
     tx_256_to_511_byte_packets: 370
     tx_512_to_1023_byte_packets: 230
     tx_1024_to_1522_byte_packets: 381
     tx_1523_to_9022_byte_packets: 0
     rx_xon_frames: 0
     rx_xoff_frames: 0
     tx_xon_frames: 0
     tx_xoff_frames: 0
     rx_mac_ctrl_frames: 0
     rx_filtered_packets: 33361
     rx_ftq_discards: 0
     rx_discards: 0
     rx_fw_discards: 0

내가 확인한 다른 컴퓨터의 다른 모든 인터페이스에 대한 오류는 모두 0입니다.

이 시점에서 다음에 무엇을 확인해야 할지 막막합니다. 문제가 어떤 방식으로든 에지 라우터와 관련이 있는 것으로 의심되지만, 동일한 문제를 나타내지 않는 이 에지 라우터에 연결된 다른 라우터가 있습니다. 어느 시점에서 나는 에지 라우터에서 스위치까지 VLAN 트렁킹(802.1q 태깅)을 사용하고 있었지만 이를 비활성화하고 MTU를 4바이트씩 1504로 높이려고 시도했지만 둘 다 눈에 띄는 차이는 없었습니다. rx_crc_errors는 여전히 누적되고 위와 같이 성능이 좋지 않습니다.

이러한 rx_crc_errors의 원인 진단에 대한 다른 아이디어가 있습니까?

관련 정보