Làm thế nào tôi có thể chẩn đoán một vòng lặp bắc cầu (ethernet)?


43

Cho rằng cây bao trùm đã thất bại (hoặc bạn không có bất kỳ cây bao trùm nào) và có được vòng lặp ethernet, cách tốt nhất để chẩn đoán vấn đề là ở đâu?

Công tắc nào?, Cáp nào? vân vân


Có câu trả lời nào giúp bạn không? nếu vậy, bạn nên chấp nhận câu trả lời để câu hỏi không xuất hiện mãi mãi, tìm kiếm câu trả lời. Ngoài ra, bạn có thể cung cấp và chấp nhận câu trả lời của riêng bạn.
Ron Maupin

Câu trả lời:


31

OK, vì vậy, giả sử bạn có một cấu trúc liên kết như:

          SW1
         /   \
        /     \
       /       \
PC A--SW2-----SW3--PC B

Vì một số lý do, có một vòng lặp bắc cầu, STP bị vô hiệu hóa hoặc ai đó đã áp dụng bộ lọc ở sai vị trí hoặc như vậy.

PC A muốn giao tiếp với PC B. Đây là ARP đầu tiên cho MAC của PC B, đích đến là một chương trình phát sóng với MAC ffff.ffff.ffff. Vì vậy, khung hình đi đến cả SW1 và SW3. MAC SRC là PC A. SW1 sau đó làm ngập khung hình về phía SW3 và SW3 sẽ làm ngập khung hình từ SW2 đến SW1.

SW1 và SW3 đã học MAC của PC A khi khung đầu tiên xuất hiện. Khi khung thứ hai đi vào từ hướng ngược lại, nó phải học lại nó. Bởi vì những sự kiện này xảy ra quá nhanh và lặp đi lặp lại, bạn sẽ thấy các thông báo nhật ký phàn nàn về việc vỗ MAC. Một cái gì đó như "MAC FLAP 0000.0000.0001 đang vỗ giữa Gi0 / 24 và Gi0 / 23". Đây là một dấu hiệu tốt cho thấy bạn có một vòng lặp.

Những gì bạn có thể làm sau đó là cố gắng theo dõi MAC này. Hãy thử tìm trong bộ đệm ARP của một thiết bị trong cùng mạng con và xem IP của thiết bị này. Vì vậy, với MAC, bạn có thể thử theo dõi nó bằng bảng địa chỉ sh mac hoặc với IP, có thể bạn có một danh sách với tất cả các IP và nơi chúng được kết nối.

Nếu máy chủ nhận được địa chỉ IP từ máy chủ DHCP, bạn cũng có thể thử ở đó để tìm nơi máy chủ đến. Nếu bạn có tùy chọn 82 được bật, đó sẽ là một trợ giúp tuyệt vời.

Các dấu hiệu khác là CLI sẽ rất chậm chạp. Tải CPU sẽ rất cao. Công tắc thực hiện hầu hết mọi thứ trong ASIC vì vậy nếu một công tắc có tải CPU trên 50% thì có lẽ không tốt. Bạn nên thực hiện giám sát SNMP và theo dõi tải CPU cao. Cũng tìm các tin nhắn MAC flap. Nếu các công tắc có một vòng lặp, đèn LED có thể sẽ nhấp nháy như điên.

Những điều bạn có thể làm để bảo vệ chống lại các vòng lặp:

  • Kích hoạt STP! (tât nhiên)
  • Giám sát SNMP tải CPU
  • Kích hoạt bẫy SNMP cho một số sự kiện nhất định như thay đổi cấu trúc liên kết STP
  • Cho phép kiểm soát bão trên các cổng để hạn chế phát sóng
  • Đừng mở rộng Vlan của bạn quá nhiều trong cấu trúc liên kết L2 của bạn
  • Cho phép bảo mật cổng và giới hạn số lượng địa chỉ MAC trên mỗi cổng
  • Kích hoạt Option82 nếu bạn chạy DHCP

Tôi phải nói rằng mục tải CPU làm tôi ngạc nhiên một chút. Tôi chưa từng thấy điều này trước đây trong suốt quá trình bắc cầu, mặc dù tất cả kinh nghiệm của tôi trong việc xử lý chúng là trên thiết bị ProCurve. Đối với họ, CLI dường như không bao giờ chậm chạp.
Paul Gear

Hấp dẫn. Có lẽ HP làm điều gì đó khác với Cisco. Một số thứ có thể ảnh hưởng đến nó sẽ là tốc độ của các giao diện liên quan đến vòng lặp. Nếu đó là unicast hoặc phát sóng. Nếu công tắc có SVI trong vlan hay không.
Daniel Dib

1
Vâng - loại lạ. Tôi đã nghĩ tất cả những điều đó (ngoại trừ vấn đề IP chuyển đổi) sẽ bằng silicon ...
Paul Gear

Trên thực tế, bây giờ tôi nghĩ về nó, tôi gần như chắc chắn rằng chúng tôi chưa bao giờ có IP chuyển đổi trong một Vlan bị ảnh hưởng. Tất cả các liên kết chuyển đổi chuyển đổi của chúng tôi trên trang web đó đều không được gắn trên Vlan chuyển tuyến không có bất kỳ IP quản lý nào trên đó.
Paul Gear

22

Một trong những người dùng của tôi gần đây đã mượn một công tắc máy tính để bàn từ bàn của ai đó. Khi trả lại công tắc, họ cắm vào tất cả các đầu ethernet lỏng lẻo gần đó. Một trong những dây cáp đó đã đi vào mạng và một đầu cáp khác là hai đầu của cùng một dây cáp. Công tắc máy tính để bàn đã được cắm vào mạng và cũng cắm vào chính nó. Công tắc không có STP, vì vậy các chương trình phát sóng từ mạng sẽ lặp trên cáp khác theo cả hai hướng. Tất nhiên, mỗi lần nhận được phát sóng trên các cổng được lặp, nó sẽ được sao chép lại vào mạng. Nó đã khiến HSRP hoàn toàn phát điên và - do thiết kế kém - nó cũng dẫn đến những thất bại phụ thuộc OSPF trên toàn khuôn viên.

Dấu hiệu đầu tiên của vấn đề là một macflap được chuyển tiếp đến email của tôi. Điều này ngay lập tức dẫn chúng tôi đến tủ dây chính xác. Từ đó, nó là một quá trình loại bỏ dựa trên đèn LED cổng, pps giao diện và nhật ký. Không cần phải nói, tôi đã nghiên cứu lại toàn bộ khuôn viên trường. Biện pháp phòng ngừa tốt nhất có lẽ là bpduguard. Tôi đã triển khai tính năng này và nó khá đơn giản. Nhận được syslog sai lầm đó trong email của tôi là không có gì là hạnh phúc.


3
Thật không may, thông báo nhật ký MAC Flaps là vô ích nếu bạn có bất kỳ điểm truy cập WIFI nào được kết nối với các thiết bị chuyển mạch khác nhau, vì người dùng chuyển vùng từ một AP sang AP tiếp theo sẽ gây ra thông báo đó. BPDU Guard (hoặc mecanism như nó) là một PHẢI trên các công tắc truy cập. Nếu bạn lười biếng, bạn cũng có thể đặt câu lệnh "phục hồi có thể gây ra lỗi bpduguard", khiến các cổng bị vô hiệu hóa tự động được đặt ở trạng thái chuyển tiếp sau 5 phút, do đó không cần thiết lập lại cổng trong cấu hình sau khi ngắt kết nối cáp vi phạm
Remi Letourneau

1
> Từ đó, đó là một quá trình loại bỏ dựa trên đèn LED cổng ... Ahh, Das Blinkenlichten.
Arthur Kay

11

Với hầu hết các thiết bị, CPU bắn tới 100% và điều duy nhất bạn có thể làm là phá vỡ các kết nối vật lý dư thừa. Khi CPU bình tĩnh lại, bạn có thể cắm các liên kết lại từng cái một và xem cái nào gây ra vòng lặp.

Đối với khung gầm lớn (như 6500) tôi đã phải rút tất cả các lưỡi dao ra và cắm lại từng cái một. Khi tôi đã tìm ra lưỡi kiếm nào, sau đó tôi phải kéo tất cả các liên kết riêng lẻ (16 GBIC) và đặt chúng trở lại cùng một lúc. Không bao giờ vui

Một số thiết bị hiện đại hơn có CPU được bảo vệ sẽ giúp giải quyết vấn đề này dễ dàng hơn - bạn vẫn có thể tương tác với hộp. Tại thời điểm đó, nhìn vào các quầy giao thông và như vậy để xác định các liên kết trục trặc trở nên có thể.


11

Gần đây tôi đã bắt đầu tại một công ty nơi họ sử dụng giới hạn phát sóng trên mỗi cổng. Nếu một cổng vượt qua> 5% công suất của nó khi phát sóng, thì công tắc sẽ chuyển nó thành ERRDISABLE.

 storm-control broadcast level 5.00  
 storm-control action shutdown

Đây là một trình bảo vệ cuộc sống khi một nhóm có xu hướng cắm các thiết bị kết nối các mạng không dây vào mạng LAN.

Mặc dù đối với câu hỏi thực tế của bạn, tôi luôn thấy nó là thủ công.


9

cho iOS:

Bạn có thể sẽ có địa chỉ MAC vỗ giữa các cổng .. tìm MAC_MOVE_NOTIFICATIONlỗi (hoặc tương tự) trong:

sh logg

Bây giờ để tìm cổng:

sh int g0/1 controller

tìm kiếm ra bình thường MulticastBroadcastsố. Bất kỳ va chạm là một dấu hiệu xấu.

Cuối cùng nhưng không kém phần quan trọng, bạn không thể đăng nhập, vì CPU đã bị xóa :)

sh proc cpu

Làm thế nào là chuyển đổi làm ở đây? Nếu chỉ là công tắc L2, bạn không muốn bất cứ thứ gì trên ~ 10%


9

Trong trường hợp bạn không được quản lý hoặc tương đương với không được quản lý (thiếu chi tiết đăng nhập hoặc kiến ​​thức về hệ điều hành chuyển đổi, v.v.), các công tắc và vòng lặp cầu, tôi mô tả cách tôi tìm kiếm vòng lặp theo cách thủ công. Điều này cũng giải quyết đáy cơ bản của câu hỏi ban đầu, "bạn không có STP".

Thuật toán cơ bản để xác định lỗi vòng lặp này tương tự như STP ngoại trừ bạn không có quyền truy cập để gửi các BPDU có ID cổng trong đó.

  • Đầu tiên, kết nối một thiết bị có khả năng đổ / đánh hơi gói với một cổng trong một trong các công tắc. Thiết bị này hiện đã trở thành thiết bị gốc của cây của bạn.
    • Nếu bạn phải xác định vị trí lỗi ở nhiều vị trí, ví dụ như trên "khuôn viên" hoặc tương tự, bạn có thể đạt được bằng cách có thể đăng nhập từ xa với máy khách ssh di động vào máy đổ gói.
      • Cá nhân tôi sử dụng máy tính xách tay Linux của tôi có kết nối Internet với tcpdump trong màn hình và ssh vào nó từ ví dụ như ipad hoặc điện thoại.
    • Nếu bạn không thể tự đăng nhập từ xa, hãy sử dụng một người bạn để theo dõi trực quan tcpdump, có thể bị ngập ở tốc độ liên kết giúp dễ dàng nhận thấy sự khác biệt mỗi khi đường dẫn đến thiết bị nguồn vòng lặp bị ngắt kết nối.
  • Tiếp theo, về cơ bản bạn sẽ phải tạo lại một cây, bắt đầu từ công tắc gốc của bạn.
    1. Và bởi vì bạn có thể có kịch bản trong đó bạn có nhiều liên kết vòng lặp cung cấp cho thiết bị gốc của mình, bạn phải bắt đầu bằng cách xóa tất cả các cổng được kết nối cùng một lúc.
    2. Kết nối lại các cổng từng cái một và nếu bất cứ lúc nào gói tin xuất hiện lại, hãy theo cổng này đến công tắc được kết nối ở đầu kia.
    3. Lặp lại bước 1, cho đến khi bạn tìm thấy (các) cổng được lặp và không thể lặp lại xuống trong cây thủ công của bạn.
    4. Đã giải quyết tình huống vòng lặp trong công tắc này, quay trở lại công tắc ở trên cây và tiếp tục bước 2. Quá trình đệ quy này tiếp tục hoàn tất cho đến khi cáp cuối cùng được kết nối lại trong công tắc gốc của bạn.

Đây là một tìm kiếm thủ công hoàn toàn đầy đủ cho các cổng vòng.

Thông thường sẽ chỉ có một cặp cổng được lặp, nghĩa là tìm kiếm toàn diện và an toàn với lần đầu tiên loại bỏ tất cả các cổng (liên kết) được kết nối và sau đó kết nối lại từng cái một là không cần thiết. Nếu chỉ một cặp cổng xuống 'cây' được lặp, bạn có thể tìm thấy nó bằng cách ngắt kết nối một cổng tại một thời điểm.

Tuy nhiên, nói chung, "bằng chứng hôi", phương pháp hoặc thuật toán, trở thành những gì tôi mô tả ở trên.


7

Ôi. Nhưng ok, tôi có thể nghĩ ra hai cách tôi sẽ làm ...

Nhãn cầu đó: Nếu các công tắc có chỉ báo cổng, bạn sẽ có thể nhìn nhãn cầu nào hoạt động nhiều nhất. Đó là những người để bắt đầu nhìn vào đầu tiên. Hy vọng rằng các dây cáp được dán nhãn để bạn có thể tìm kiếm trái cây treo thấp khi tìm thấy hai cổng bận, trên hai công tắc có cùng cáp.

Giám sát SNMP: Nếu bạn có số liệu thống kê sử dụng SNMP (hoặc tương tự), hãy tìm công tắc bận nhất và các cổng bận nhất. Sau đó đi nhìn vào dây cáp.

... Nếu bạn có cáp không được gắn nhãn, hãy bắt đầu truy tìm và dán nhãn như là một phần của việc kiểm tra các cổng bận rộn nhất.


2
Bẫy SNMP sẽ tốt hơn so với bỏ phiếu SNMP, thường chỉ được thực hiện một lần trong mỗi 300 giây. Một trận lụt và cuộc khủng hoảng tiếp theo có thể xảy ra nhanh đến mức không có gì được SNMP theo dõi. Mặc dù vậy vẫn hữu ích, các màn hình SNMP không lấy lại được dữ liệu từ các công tắc không theo kịp có thể đưa ra điểm khởi đầu.
generalnetworkerror

3

Tôi sẽ trả lời câu hỏi này dựa trên sự hiểu biết rằng có sự cố mất điện hoàn toàn cho tên miền lớp 2 đang được đề cập và bạn không có quyền truy cập quản lý vì tất cả các CPU đều được chốt.

Cách tốt nhất để khắc phục sự cố vòng lặp bắc cầu là bắt đầu rút các liên kết lên cho đến khi nó biến mất. Giả sử bạn có lớp truy cập chuyển đổi tiêu chuẩn với tất cả các công tắc truy cập kết nối thành một cặp công tắc phân phối. Chuyển đến công tắc truy cập đầu tiên và rút phích cắm đường lên, nếu đèn LED cho các tổng đài ngừng hoạt động, đó không phải là công tắc đó, hãy cắm lại và chuyển sang công tắc tiếp theo. Lặp lại cho đến khi bạn nhận được một công tắc nơi bạn đã rút các liên kết lên và đèn LED đang tiếp tục nhấp nháy nhanh chóng, đây là công tắc của bạn với vòng lặp.

Bây giờ bắt đầu quá trình rút phích cắm trên các cổng của người dùng cuối cho đến khi đèn LED dịu xuống, khi họ tắt, cái cuối cùng bạn rút ra là cổng có vấn đề, theo dõi cáp và trừng phạt người dùng một cách thích hợp.


2

Thành thật mà nói, nếu bạn kết nối từ xa (hoặc qua cáp điều khiển) vào thiết bị, bạn sẽ nhận thấy thiết bị rất chậm chạp, sẽ có độ trễ từ khi bạn nhập các chữ cái xuất hiện trên CLI.

Nếu là một thiết bị chuyển mạch của Cisco, 2 cái dễ dàng là xem số liệu thống kê giao diện, nó sẽ được sử dụng liên tục 100% (hoặc 255/255). Trong những năm làm việc với các thiết bị chuyển mạch, tôi vẫn chưa thấy một cổng nào được sử dụng hợp pháp 100%. Ngoài ra, hãy kiểm tra mức sử dụng CPU (thường là "hiển thị lịch sử cpu"), các giao diện được lặp thường sẽ tác động mạnh đến CPU của bạn trừ khi bạn đang chạy một công tắc cao cấp.

STP thực sự nên được kích hoạt mặc dù!


2

Tôi đã có vấn đề này xảy ra trên một mạng ở đầu kia của Hoa Kỳ và phải giúp đỡ từ xa một số nhà phân tích cấp một qua điện thoại và liên kết wan của tôi đến trang web của họ. Vấn đề còn phức tạp hơn nữa bởi thực tế là họ có một số nhãn hiệu thiết bị chuyển mạch mà họ đã dần dần thêm vào mạng trong những năm qua. Khi họ chuyển văn phòng, họ đánh dấu nơi mỗi cổng đi sau đó gắn lại mọi thứ theo cùng một cách chính xác tại văn phòng mới và bắt đầu mọi thứ. Không cần phải nói rằng một số công tắc đã hoạt động trên cây bao trùm không hội tụ theo cùng một cách và chúng có tất cả các loại vòng lặp và các vấn đề. Khi tôi sửa xong mọi thứ, không dưới ba công tắc không được quản lý đã được phát hiện đã được kết nối trong các vòng lặp với phần còn lại của cơ sở hạ tầng.

Cách tôi có thể theo dõi từng công tắc không được quản lý bằng cách sử dụng một công cụ có tên là nedi (trên các công tắc có thể được quản lý, tôi đã bật lldp / cdp). Lần đầu tiên tôi tạo bản đồ với nedi. Sau đó, tại các khu vực nơi bản đồ hiển thị các kết nối từ công tắc này sang công tắc khác rồi quay lại cùng một công tắc một lần nữa, tôi đã nhờ kỹ thuật viên mạng trên trang web theo dõi đường thủ công. Tôi có thể tự tắt các giao diện liên quan đến vòng lặp hoặc rút cáp người tại chỗ. Cuối cùng, tôi đã có thể làm cho mạng hoạt động như bình thường, bất chấp tất cả các thiết bị chuyển mạch thương hiệu điên rồ.


1

Một điều có thể được thực hiện ở đây, là để xem những máy nào được kết nối với công tắc bằng cách sử dụng các lệnh show cdp neighborhoặc show lldp neighbor.

Nếu lệnh bảo vệ BPDU không được sử dụng và ai đó kết nối một công tắc lừa đảo với mức độ ưu tiên thấp hơn (hoặc địa chỉ mac cũ hơn), thiết bị mới sẽ đàm phán là gốc Spanning Tree, điều này chắc chắn sẽ gây ra sự cố.


0

Theo kinh nghiệm của tôi, đó luôn là cáp mà tôi vừa cắm hoặc không tắt hoặc thêm vào kênh cổng. Tougher là khi người khác làm điều đó và không ngay lập tức nổi giận.


0

Xác định một vòng lặp thực sự phụ thuộc vào thương hiệu của chuyển đổi mà bạn có. Ví dụ, trên một công tắc Extreme, tôi có thể chạy elrp-client trên Vlan và về cơ bản, công tắc sẽ gửi một khung phát trên tất cả các cổng cho Vlan đó và xem nếu nó trả về bởi bất kỳ ai trong số họ, nếu vậy, nó sẽ cho tôi biết cổng (s) khung đã được nhận lại, do đó tiết lộ các ứng cử viên vòng lặp.

Trên Cisco, bạn có thể kích hoạt kiểm soát bão, một công cụ cùn hơn một chút vì về cơ bản nó sẽ chặn cổng trong một khoảng thời gian cho đến khi trạng thái xóa (hoặc bạn xóa trạng thái lỗi) - nói chung là loại này điều này chỉ có liên quan khi bạn đang sử dụng các thiết bị chuyển mạch của Cisco trong cấu trúc liên kết hỗn hợp của các thiết bị không thực hiện cây bao trùm cũng như chuyển tiếp BPDU.


0

Không nghi ngờ gì, cách tiếp cận nhanh nhất tôi đã tìm thấy là bằng cách theo dõi tốc độ gói / giây của giao diện. Giao diện hiển thị nhanh với bộ lọc CLI thích hợp sẽ liệt kê từng giao diện và tốc độ gói / giây. Để tìm nguồn của vòng lặp, hãy tìm giao diện duy nhất có tốc độ INPUT gói / giây cao. Trong một môi trường doanh nghiệp điển hình, với các cấu hình sử dụng điển hình, nó hoạt động mọi lúc mà không bị lỗi. Trên 6500 với nhiều giao diện, sẽ không mất nhiều thời gian để phát hiện ra nguồn ...


0

Trong vòng lặp, đối với một số lượng lớn lưu lượng phát sóng (ví dụ: Yêu cầu ARP) ở trạm cuối cũng có thể tăng tải cho CPU (ví dụ: nếu bạn đang sử dụng thẻ realtek 100Mbit / s giá rẻ để tính toán tổng kiểm tra trên CPU). Về mặt vật lý có thể tìm thấy một vòng lặp nếu cáp bị ngắt kết nối, liên kết bị mất ngay lập tức trên 2 cổng.

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.