Почему я получаю сообщение об ошибке "Неверный синтаксис имени файла, имени каталога или метки тома" при использовании netsh set route?
На компьютере с Windows7 я пытался установить стандартный шлюз, следуя этому примеру:
netsh.exe interface ipv4 set route 0.0.0.0/32 "Internet" 172.16.5.1
который вернул следующую ошибку:
The filename, directory name, or volume label syntax is incorrect
Почему это так, и как я могу установить стандартный шлюз для моих соединений?
3 ответа
Вам нужно использовать имя вашего реального интерфейса вместо "Internet"
, Вы можете перечислить их с netsh interface show interface
,
В интерфейсе есть какое-то "базовое имя", настроенное при его первом создании или когда оно изменяется вручную. Вы можете получить это используя:
netsh interface ipv4 show config
Это может отличаться от того, что вы видите в окне графического интерфейса или от запуска netsh interface show interface
Попробуйте вместо этого использовать это имя интерфейса - это работает для меня на Windows 7.
У меня просто была похожая проблема. Проблема заключалась в "символе". Я скопировал netsh из текстового документа, который я получил от нашего поставщика программного обеспечения, и вставил его непосредственно в CMD и изменил необходимые детали, что не удалось с упомянутой здесь ошибкой. Однако, когда я сначала скопировал строку в Блокнот и заменил один из "Я обнаружил, что они разные, поэтому я заменил оба / повторно набрал оба, и проблема решена сейчас.
Очевидно, в Windows 7 вам нужно использовать другой синтаксис для выполнения команды в правильном контексте. Предисловие спецификаторов контекста связывает интерфейс ipv4 с параметром -c и заключает в кавычки весь спецификатор контекста. Например, чтобы установить адаптер на DHCP:
netsh -c "interface ipv4" set address name="Local Area Connection" source=dhcp