Windows: Lấy số giao diện của một NIC


17

Tôi có một vấn đề sau: Tôi có một máy chủ có cấu hình mạng khá động và cần định cấu hình các tuyến đường trên đó với tham số IF:

route add  ... mask ... ... if ?

Có một cách đáng tin cậy, thủ công và lập trình, để có được số giao diện đó nếu tôi biết mọi thứ khác về bộ điều hợp đó?

Câu trả lời:


22

Bạn cũng có thể thấy thông tin đó khi bạn chạy route printlệnh. Đó là điều đầu tiên được hiển thị. Chỉ mục là cột đầu tiên

===========================================================================
Interface List
 13... ......Bluetooth Device (Personal Area Network)
 10... ......Intel(R) 82566MM Gigabit Network Connection
 11... ......Intel(R) Wireless WiFi Link 4965AG
 17... ......VMware Virtual Ethernet Adapter for VMnet1
 18. . ......VMware Virtual Ethernet Adapter for VMnet8

14

Lệnh sau hiển thị danh sách các giao diện:

netsh int ipv4 show interfaces


1
Điều này hoạt động nhưng bạn nên tiết lộ câu trả lời của mình một chút để đảm bảo nó không bị gắn cờ.
TheCleaner

9

Vì bạn biết mọi thứ khác về bộ điều hợp và vì bạn đang sử dụng Server 2008, nên bạn có thể (và nên) chỉ cần thêm các tuyến đường của mình bằng Netsh bằng tên giao diện:

netsh int ipv4 add route <remote netid>/<remote netmask> <interface name> <next hop>

Việc sử dụng lệnh lộ trình thường không được chấp nhận trong năm 2008+.


Tôi sẽ không nói rằng nó đã được khấu hao .. chỉ nên sử dụng Netsh ngay bây giờ. :) BTW, lệnh của bạn phải là "Netsh interface ipv4 add route"
Rex

Yeah đã di chuyển quá nhanh, lệnh đã được chỉnh sửa :) Mặc dù Microsoft hiếm khi sử dụng thuật ngữ "không dùng nữa", tôi tin rằng thuật ngữ của họ về cơ bản là "Nên sử dụng Netsh thay vì tuyến đường". Cá nhân tôi đã thấy một số vấn đề với các cụm khi sử dụng lệnh tuyến đường, trong đó các sự cố định tuyến xảy ra khi chuyển đổi dự phòng.
phoebus

2
Lưu ý rằng tên adatper có thể khác với tên trong route printvà sử dụng tên sai sẽ dẫn đến thông báo lỗi "hữu ích": "Tên tệp, tên thư mục hoặc cú pháp nhãn âm lượng không chính xác.". sử dụng netsh interface ipv4 show interfacesđể tìm tên thật
ET-CS

3

Bạn có thể sử dụng PowerShell:

Get-WMIObject Win32_networkadapter | Select-Object Name, AdapterType, InterfaceIndex | Format-List

Điều này trả về số, nhưng chúng không khớp với route printđầu ra. Các DeviceIDgiá trị cũng không khớp. (Và không, nó không chỉ đơn giản là vấn đề ngoài
lề

Theo blog của MS, routelệnh trả về mức ưu tiên của bộ điều hợp. Lệnh này trả về Interface Index. xem tại đây: blog.technet.microsoft.com/networking/2015/08/14/iêu
bobpaul
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.