Каталог статей
сетевой режим
- Режим моста:
- Хост и виртуальная машина являются одноранговыми.Виртуальная машина регистрируется в локальной сети, где расположен хост, и занимает IP-адрес сети.
- Все машины в локальной сети, включая хост, другие машины и все виртуальные машины, могут иметь доступ друг к другу.
- Виртуальная машина может получить доступ к Интернету
- Режим переадресации сетевых адресов (NAT):
- Можно считать, что под хостом создана виртуальная локальная сеть, виртуальная машина зарегистрирована в сети и не будет занимать IP той локальной сети, где находится хост.
- Виртуальная машина может получить доступ к Интернету через хост
- Хост и все виртуальные машины могут иметь доступ друг к другу.
- Виртуальная машина может получить доступ к другим машинам в локальной сети хоста, но обратное невозможно (похоже, что мультиплексирование портов NAT-PAT (разные порты указывают на разные виртуальные машины) может обеспечить эту функцию)
- Режим только хоста:
- Похоже на: НАТ
- Но виртуальные машины могут обращаться друг к другу только с хостом
- Не могу получить доступ к интернету через хост
- Вы также не можете получить доступ к другим машинам в локальной сети хоста.
Требования к распределительной сети
Как специалисту по Java, вам обычно необходимо, чтобы хост и виртуальная машина имели следующие сетевые характеристики:
- Хост и каждая виртуальная машина могут иметь доступ друг к другу.
- Виртуальные машины могут иметь доступ друг к другу
- Виртуальная машина может получить доступ к Интернету
- После настройки IP-адрес каждой виртуальной машины фиксируется. Даже если сеть, в которой расположен хост, изменится, на IP-адрес виртуальной машины это не повлияет.
- Обязательно необходимо настроить адрес вручную.Автоматический DHCP-адрес изменится, в результате чего службы, развернутые на виртуальной машине, станут недоступными.
- Многие промежуточные программы имеют высокую доступность и требуют настройки IP-адресов друг для друга.Как только IP-адрес виртуальной машины изменится, изменить его будет очень сложно.
Похоже, что режим моста не соответствует четвертому пункту, режим хоста не соответствует только третьему пункту и только режим NAT соответствует требованиям.
ЦентОС
- До CentOS Stream 9 конфигурация сети была
/etc/sysconfig/network-scripts
ниже а формат был ifcfg. - CentOS Stream 9, конфигурация сети находится
/etc/NetworkManager/system-connections
в папке , формат — keyfile, который является форматом файла конфигурации ini.
В CentOS Stream 9 также больше нет предыдущей команды для настройки сети.
- запуск/перезапуск/статус сервисной сети
- systemctl запуск/перезапуск/статус сети
CentOS Stream 9 перезагрузит конфигурацию сети
- nmcli c перезагрузить
- nmcli c up ens160, ens160 здесь имя сетевой карты, которое можно изменить в зависимости от реальной ситуации
Конфигурация до CentOS Stream 9 была примерно такой
TYPE=Ethernet # 网络类型为以太网
BOOTPROTO=static # 手动分配IP地址
DEVICE=ens32 # 网卡设备名,设备名和文件名一定要一致
ONBOOT=yes # 网卡随网络服务启动
IPADDR=192.168.1.201 # 网卡IP地址, 要和Windows在同一个网段, 即192.168.1.*
NETMASK=255.255.255.0 # 子网掩码
GATEWAY=192.168.1.1 # 默认网关
DNS1=8.8.8.8 # DNS,8.8.8.8为Google提供的免费DNS服务器IP地址
Конфигурация CentOS Stream 9 по умолчанию выглядит следующим образом. Вы можете видеть, что конфигурация ipv4 по умолчанию предназначена для автоматического получения IP-адреса. Если существует служба DHCP, виртуальная машина с этой конфигурацией должна иметь возможность автоматически получать IP-адрес после запускается и может напрямую получить доступ к Интернету.
[connection]
id=ens160
uuid=xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx
type=etherent
autoconnect-priority=-999
interface-name=ens160
timestamp=1692376766
[ethernet]
[ipv4]
method=auto
[ipv6]
addr-gen-mode=eui64
method=auto
[proxy]
В следующих тестах в качестве примера используется CentOS Stream 9. Конфигурация и эффекты по умолчанию в CentOS Stream 9 могут отличаться от других версий, но они примерно одинаковы.
DHCP
Служба DHCP может динамически выделять IP-адреса клиентам в соответствии с определенными правилами и ограничениями.
Режим NAT и режим только для хоста имеют встроенные службы DHCP. В режиме моста используется служба DHCP локальной сети, в которой расположен хост, то есть виртуальные машины в этих трех сетевых режимах. Если система настроена на автоматическое получение IP-адреса адрес, виртуальная машина может получить его после запуска. Случайные IP-адреса в определенных пределах. После каждого запуска назначенный IP-адрес может меняться.
виртуальная сеть
В настоящее время эта машина подключена только к беспроводной сети, поэтому этот эксперимент основан на беспроводной сетевой карте.
В панели управления мы видим информацию о сетевой карте: Ethernet — это проводная сетевая карта (в этот раз недоступна), а WLAN — беспроводная сетевая карта.
Когда будет установлена VMWare Workstation, появятся еще две виртуальные сетевые карты: VMnew1 и VMnet8.
Эти виртуальные сети можно просмотреть и настроить в редакторе виртуальных сетей VMWare Workstation.
VMnet1 соответствует режиму только для хоста, VMnet8 соответствует режиму NAT, а VMnet0 соответствует режиму моста. Говорят, что режим моста напрямую использует сетевую карту хоста, поэтому он не будет отображаться в сетевом адаптере в панель управления.
режим моста
По умолчанию виртуальная машина CentOS Stream 9, которую мы создали в режиме моста, может иметь прямой доступ к Интернету.
Хотя в режиме моста нет DHCP, в режиме моста будет использоваться служба DHCP локальной сети, в которой расположен хост.
В режиме моста виртуальная машина и хост являются одноранговыми и должны находиться в одном сегменте сети и иметь одну и ту же маску подсети.Поэтому для настройки сети виртуальной машины необходимо сначала понять текущую сеть хоста.
Выполнение в cmd ipconfig
показывает
无线局域网适配器 WLAN:
连接特定的 DNS 后缀 . . . . . . . :
IPv6 地址 . . . . . . . . . . . . : 2409:8a0c:247:8f70:46f:6c47:8c14:77da
临时 IPv6 地址. . . . . . . . . . : 2409:8a0c:247:8f70:c96e:29a0:184f:3906
本地链接 IPv6 地址. . . . . . . . : fe80::9ce9:cfa2:bedb:b6cc%3
IPv4 地址 . . . . . . . . . . . . : 192.168.1.2
子网掩码 . . . . . . . . . . . . : 255.255.255.0
默认网关. . . . . . . . . . . . . : fe80::1%3
192.168.1.1
Чтобы узнать, проверьте информацию о подключении к локальной сети.
SSID: CMCC-R7tU-5G
协议: Wi-Fi 6 (802.11ax)
安全类型: WPA2-个人
制造商: MediaTek, Inc.
描述: MediaTek Wi-Fi 6 MT7921 Wireless LAN Card
驱动程序版本: 23.32.2.553
网络频带: 5 GHz
网络通道: 48
链接速度(接收/传输): 1201/1201 (Mbps)
IPv6 地址: 2409:8a0c:247:8f70:46f:6c47:8c14:77da
本地链接 IPv6 地址: fe80::9ce9:cfa2:bedb:b6cc%3
IPv6 DNS 服务器: fe80::1%3 (未加密)
IPv4 地址: 192.168.1.2
IPv4 DNS 服务器: 192.168.1.1 (未加密)
Сводка показывает, что информация о хост-сети следующая:
- Шлюз по умолчанию: 192.168.1.1.
- Маска подсети: 255.255.255.0
- Адрес хоста: 192.168.1.2
- Адрес DNS-сервера: 192.168.1.1
Кроме того, мой мобильный телефон также подключен к той же локальной сети, а адрес мобильного телефона — 192.168.1.3.
Таким образом, адрес виртуальной машины в режиме моста можно настроить как любой адрес от 192.168.1.4 до 192.168.1.254, который не конфликтует с другими устройствами.Подробную информацию можно найти в разделе Baidu, посвященном сети.
В качестве примера возьмем ручную настройку 192.168.1.129/24. /24 — это маска подсети 255.255.255.0.
распределение по умолчанию
Сначала проверьте конфигурацию VMnet0 в редакторе виртуальной сети. Она должна быть подключена к правильной физической беспроводной сетевой карте. Автоматическая настройка по умолчанию обычно не представляет проблем и не требует изменения.
Затем смотрим настройки виртуальной машины, меняем сетевое подключение на режим моста, затем запускаем виртуальную машину и ip a
просматриваем сетевую информацию виртуальной машины.
Вы можете видеть, что адрес ens160 назначен 192.168.1.5.
тест
Попробуйте зайти друг к другу в гости
Как видно, эффект соответствует ожиданиям.
- Хост может получить доступ к виртуальной машине
- Виртуальная машина может получить доступ к хосту
- Виртуальная машина может получить доступ к другим машинам в локальной сети хоста.
- Виртуальная машина может получить доступ к Интернету
- Другие машины в локальной сети хоста могут получить доступ к виртуальной машине.
Ручная настройка
/etc/NetworkManager/system-connections
По умолчанию существует только один файл конфигурации ens160.nmconnection
, и его содержимое следующее:
[connection]
id=ens160
uuid=9b698abd-9a30-3055-98c2-8ace52598494
type=ethernet
autoconnect-priority=-999
interface-name=ens160
timestamp=1692431323
[ethernet]
[ipv4]
method=auto
[ipv6]
addr-gen-mode=eui64
method=auto
[proxy]
Измените конфигурацию в разделе конфигурации ipv4 следующим образом.
method=manual
address1=192.168.1.129/24,192.168.1.1
dns=192.168.1.1
manual
Представляет ручную настройку сетевого адреса.- Address1 — это адрес виртуальной машины и адрес шлюза . Если здесь нет адреса шлюза, доступ к Baidu будет невозможен.
- dns — это сервер разрешения доменных имен, разделенный английскими точками с запятой. Если он здесь не настроен, он не будет иметь никакого эффекта.
Выполните nmcli c reload
и nmcli c up ens160
перезагрузите конфигурацию сети, вы увидите, что IP-адрес изменился.
тест
Видно, что результаты теста точно такие же, как и ожидалось, то есть
- Хост может получить доступ к виртуальной машине
- Виртуальная машина может получить доступ к хосту
- Виртуальная машина может получить доступ к другим машинам в локальной сети хоста.
- Виртуальная машина может получить доступ к Интернету
- Другие машины в локальной сети хоста могут получить доступ к виртуальной машине.
Режим пересылки сетевых адресов (NAT)
Использовать режим NAT
- Он не занимает IP-адрес локальной сети, в которой расположен хост, чтобы предотвратить недостаточное использование (например, в корпоративной среде).
- Он также может изолировать влияние изменений локальной сети хоста на сеть виртуальных машин.
- Если это виртуальная машина в режиме моста, адрес виртуальной машины указывается вручную. Исходный адрес хоста был 192.168.1.2. Теперь маршрутизатор поменялся, и адрес хоста стал 192.168.0.2. Если их всего несколько виртуальные машины, вручную Смена IP все еще допустима, но если объем большой, это будет до смерти раздражать.
В качестве примера возьмем ручную настройку 192.168.88.150/24. /24 — это маска подсети 255.255.255.0.
Восстановить конфигурацию
Мы только что изменили конфигурацию ens160.Давайте сначала восстановим содержимое раздела ipv4.
[ipv4]
method=auto
Конфигурация виртуальной сети
В VMnet8 вы можете установить конкретный IP-адрес подсети и маску подсети.Этот сегмент сети представляет собой виртуальную локальную сеть, которая может отличаться от сегмента сети локальной сети, в которой расположен хост.В то же время лучше избегать общий 192.168.0.0 / 192.168.1.0 / Подсеть маршрутизатора по умолчанию — 192.168.31.0. Значение по умолчанию 192.168.88.0 вполне подходит и практически не конфликтует с локальной сетью хоста. Таким образом, когда хост переключает локальную сеть, он не повлияет на виртуальные машины, настроенные в сети.
Настройки NAT и DHCP обычно остаются неизменными.
Итак суммируем информацию о VMnet8
Адрес подсети: 192.168.88.0
Маска подсети: 255.255.255.0
Адрес шлюза: 192.168.88.2
распределение по умолчанию
Сначала проверьте конфигурацию VMnet8 в редакторе виртуальных сетей.По умолчанию ее не нужно менять, если локальная сеть хоста не конфликтует с виртуальной сетью.
Затем смотрим настройки виртуальной машины, меняем сетевое подключение на режим NAT, затем перезагружаем виртуальную машину и просматриваем ip a
сетевую информацию виртуальной машины.
Примечание. В настоящее время конфигурация сети ipv4 системы восстановлена method=auto
до
Вы можете видеть, что адрес ens160 назначен 192.168.88.129.
тест
Адрес хоста: 192.168.1.2
Адрес мобильного телефона: 192.168.1.3
Адрес шлюза: 192.168.1.1
Адрес виртуальной машины: 192.168.88.129.
Попробуйте зайти друг к другу в гости
Видно, что результаты соответствуют ожиданиям.
- Хост может получить доступ к виртуальной машине
- Виртуальная машина может получить доступ к хосту
- Виртуальная машина может получить доступ к другим машинам в локальной сети хоста.
- Виртуальная машина может получить доступ к Интернету
- Другие машины в локальной сети хоста не могут получить доступ к виртуальной машине.
Ручная настройка
Или измените /etc/NetworkManager/system-connections/ens160.nmconnection
раздел ipv4 в
method=manual
address1=192.168.88.150/24,192.168.88.2
dns=114.114.114.114;8.8.8.8
manual
Представляет ручную настройку сетевого адреса.- Address1 — это адрес виртуальной машины и адрес шлюза виртуальной сети . Здесь необходимо настроить адрес виртуального шлюза, иначе виртуальная машина не сможет получить доступ к хосту и другим машинам в локальной сети хоста.
- dns — сервер разрешения доменных имен, разделенный английскими точками с запятой. Если он не настроен, вы не сможете получить доступ к Интернету.
Выполните nmcli c reload
и nmcli c up ens160
перезагрузите конфигурацию сети, вы увидите, что IP-адрес изменился.
тест
Видно, что результаты теста точно такие же, как и ожидалось, то есть
- Хост может получить доступ к виртуальной машине
- Виртуальная машина может получить доступ к хосту
- Виртуальная машина может получить доступ к другим машинам в локальной сети хоста.
- Виртуальная машина может получить доступ к Интернету
- Другие машины в локальной сети хоста не могут получить доступ к виртуальной машине.
Режим только хоста
Подобно режиму NAT, вы можете настроить и протестировать его самостоятельно.