Назад | Перейти на главную страницу

MTU на сервере случайно установлено на 0, не может ssh в него?

На моем сервере возникла проблема с ssh, и я не мог загружать файлы размером> 10 КБ, так как scp зависал во время копирования. Я нашел решение этой проблемы Вот, и я менял MTU, когда случайно сделал sudo ip link set eth0 mtu 0.

Теперь никто не может подключиться к серверу по ssh. Что я должен делать?

Подключаемся к консоли и меняем MTU обратно. Если у вас нет доступа к консоли, перезагрузите сервер.

Непонятно, какую операционную систему вы используете. Я протестировал вашу конкретную команду в двух разных версиях Linux, и каждая из них выдала мне сообщение об ошибке:

RTNETLINK answers: Invalid argument

Если вы нашли систему, которая действительно позволяет вам установить MTU равным 0, я бы посчитал это ошибкой ядра. Однако вполне вероятно, что существуют системы, в которых установка MTU на 0 имеет другое значение, такое как автоматическое определение MTU.

IPv4 требует, чтобы все узлы имели MTU не менее 68. Linux знает это и отключает IPv4 на интерфейсе, если для MTU установлено меньшее значение, например 67. Таким образом можно заблокировать себя из системы. Это неудобно, и я бы подумал, что это было бы лучше, если бы ядро ​​отклоняло изменение MTU, пока у интерфейса был какой-либо IP-адрес, требующий более высокого MTU.

Если вы случайно отключите и IPv4, и IPv6 на сетевом интерфейсе, маловероятно, что вы найдете какой-либо способ удаленного администрирования машины через этот сетевой интерфейс. Если у сервера есть какие-либо другие сетевые интерфейсы, вы можете получить к нему доступ таким образом. Даже если другой сетевой интерфейс не был настроен, он все еще может иметь локальный адрес ссылки IPv6, на который можно было бы использовать ssh с другого хоста в том же сегменте. В противном случае возможна установка последовательной консоли, поскольку последовательная консоль полностью не зависит от сетевой конфигурации хоста. В конечном итоге вы можете перезагрузить компьютер, если у вас есть доступ для этого удаленно. Если вы не записали ошибочное изменение ни в какие файлы конфигурации, перезагрузка должна исправить это.