изменить IPV6 на IPV4 в Linux VMWare virtual box

История команд не включена в скриптах. Даже если вы включите его, сценарий не будет иметь доступа к истории вызывающей его интерактивной оболочки.

Вместо написания сценария создайте функцию и поместите ее в свой .bashrc .

Кроме того, вместо выполнения команды в отдельном экземпляре bash вам, вероятно, следует использовать встроенную функцию eval для ее выполнения в том же контексте (в частности, с теми же переменными оболочки).

Ваш подход с расширением истории работает только для простых команд; команды, содержащие специальные символы, приведут к синтаксическим ошибкам или другому непредусмотренному поведению. Используйте встроенную команду fc для программного доступа к истории.

reexecute () {
  eval "$(fc -l -1 | sed …)"
}
0
09.05.2018, 09:58
1 ответ

Каждая сетевая карта имеет уникальный MAC-адрес (08:00 :27:66 :ca :5e на скриншоте ). Сетевой код IPv6 в Linux автоматически назначает специальный адрес IPv6, начинающийся с fe80 ::и состоящий из MAC-адреса сетевой карты (fe80 ::a 0027:fe 66 :ca5e на том же скриншоте ). Этот IPv6-адрес используется для поиска сетевого маршрутизатора IPv6 и запроса глобального IPv6-адреса (. Это почти то же самое, что и получение IPv4-адреса через протокол динамической конфигурации, также известный как DHCP ).

Проще говоря, у вас нет ни реального адреса, назначенного вашей сетевой карте (, ни IPv4, ни IPv6 ).

Вам необходимо настроить VMware или VirtualBox для предоставления службы DHCP для автоматического назначения IP-адресов вашим виртуальным машинам, или вам придется назначать IP-адреса вручную.

2
28.01.2020, 02:32

Теги

Похожие вопросы