У меня есть виртуальная машина на основе QEMU/KVM с CentosOS 6.4, которая не может полностью подключиться к Интернету. Я могу пинговать IP-адреса (например, пинг 8.8.8.8
успешно работает), но доменные имена не разрешаются (напр. пропинговать google.com
возвращается ping: неизвестный хост google.com
).
Гостю назначен статический IP-адрес, и я использую сеть по умолчанию (на основе NAT):
<network>
<name>default</name>
<uuid>8c257186-7af4-4e19-a086-27f50f692af6</uuid>
<forward mode='nat'/>
<bridge name='virbr0' stp='on' delay='0'/>
<mac address='52:54:00:d6:62:2d'/>
<ip address='192.168.122.1' netmask='255.255.255.0'>
<dhcp>
<range start='192.168.122.2' end='192.168.122.254'/>
</dhcp>
</ip>
</network>
/run/resolvconf/resolv.conf
отсутствует на ВМ; и ни один из resolvconf
, нслукап
, systemctl
, хозяин
, hostnamectl
, или же нмкли
программы установлены, поэтому возможность запуска диагностики сетевых настроек ограничена.
Я пробовал следующее:
- Редактирование
/etc/sysconfig/сетевые скрипты/ifcfg-eth0
добавляя DNS1=8.8.8.8
, DNS2=8.8.4.4
и PEERDNS=да
. После перезагрузки это создало /etc/resolv.conf
, которого изначально не было.
- Замена «hosts: files dns» на «hosts: files dns nisplus nis» в
/etc/nsswitch.conf
, затем перезагрузка.
- Следующий это руководство для создания сети только для хоста.
- Следующий это руководство для создания виртуального моста через qemu-bridge-helper.
- (Кроме того, я попытался создать файлообменник между гостем и хостом через это руководство, но для этого требуется 9p, файловая система, с которой CentOS 6, по-видимому, несовместима.)
Но с каждой попыткой хост по-прежнему не может подключиться/пинговать гостя по SSH, а гость не может разрешать доменные имена. Любая помощь в выполнении любого из этих двух шагов (хост может подключиться к гостю по SSH; гость полностью подключен к интернету) буду очень признателен.
Вот некоторые содержимое файла/вывод командной строки, которые могут быть полезны. Рад предоставить дополнительную информацию.
Содержание /etc/resolv.conf
(Гость):
параметры edns0 траст-объявление
; сгенерировано /sbin/dhclient-script
сервер имен 8.8.8.8
сервер имен 8.8.4.4
Вывод IP а
(Гость):
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 16436 qdisc noqueue state UNKNOWN
ссылка/петля 00:00:00:00:00:00 брд 00:00:00:00:00:00
инет 127.0.0.1/8 область хоста lo
inet6 :: 1/128 узел области видимости
valid_lft навсегда
2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast состояние UP qlen 1000
ссылка/эфир 52:54:00:7b:6c:27 брд ff:ff:ff:ff:ff:ff
инет 192.168.122.92/22 brd 192.168.123.255 глобальный охват eth0
inet6 fe80::5054ï¬fe7b:6c27/64 ссылка на объем
valid_lft навсегда
Вывод СШ 192.168.122.92
(Хозяин):
ssh: подключиться к хосту 192.168.122.92, порт 22: подключение отклонено
Вывод пинг 192.168.122.92
(Хозяин):
PING 192.168.122.92 (192.168.122.92) 56 (84) байт данных.
From 192.168.122.1 icmp_seq=1 Порт назначения недоступен
ping: sendmsg: операция не разрешена
From 192.168.122.1 icmp_seq=2 Порт назначения недоступен
ping: sendmsg: операция не разрешена
From 192.168.122.1 icmp_seq=3 Порт назначения недоступен
ping: sendmsg: операция не разрешена
From 192.168.122.1 icmp_seq=4 Порт назначения недоступен
ping: sendmsg: операция не разрешена
^ С
--- Статистика пинга 192.168.122.92 ---
4 пакета передано, 0 получено, +4 ошибки, 100% потери пакетов, время 3065 мс
РЕДАКТИРОВАТЬ 1
Содержание /etc/sysconfig/сетевые скрипты/ifcfg-eth0
(Гость):
УСТРОЙСТВО=eth0
HWADDR=52:54:00:7B:6C:27
ТИП=Ethernet
ONBOOT=да
NM_CONTROLLED=нет
БУТПРОНТО=нет
IP-АДРЕС=192.168.122.92
СЕТЕВАЯ МАСКА=255.255.252.0
ШЛЮЗ=192.168.122.1
DNS1=8.8.8.8
DNS2=8.8.4.4
PEERDNS=да
РЕДАКТИРОВАТЬ 2
Вывод iptables-сохранить
(Хозяин):
# Сгенерировано iptables-save v1.8.4, понедельник, 3 января, 22:03:26 2022 г.
* калечить
: ПРЕДВАРИТЕЛЬНОЕ ПРИНЯТИЕ [86972:77359835]
:ВВОД ПРИНЯТЬ [86966:77359331]
:ВПЕРЕД ПРИНЯТЬ [6:504]
: ВЫВОД ПРИНЯТ [87805:9060728]
: ОТПРАВКА ПРИНЯТИЯ [69226:7583136]
:LIBVIRT_PRT - [0:0]
-A ОТПРАВКА -j LIBVIRT_PRT
-A LIBVIRT_PRT -o virbr0 -p udp -m udp --dport 68 -j КОНТРОЛЬНАЯ СУММА --checksum-fill
СОВЕРШИТЬ
# Завершено в понедельник, 3 января, 22:03:26 2022 г.
# Сгенерировано iptables-save v1.8.4, понедельник, 3 января, 22:03:26 2022 г.
*натуральный
: ПРЕДВАРИТЕЛЬНОЕ ПРИНЯТИЕ [4:1038]
:ВВОД ПРИНЯТЬ [3:954]
: ВЫВОД ПРИНЯТ [19614:1550200]
:ОТПРАВКА ПРИНЯТИЯ [1032:73142]
:LIBVIRT_PRT - [0:0]
-A ОТПРАВКА -j LIBVIRT_PRT
-A LIBVIRT_PRT -s 192.168.122.0/24 -d 224.0.0.0/24 -j ВОЗВРАТ
-A LIBVIRT_PRT -s 192.168.122.0/24 -d 255.255.255.255/32 -j ВОЗВРАТ
-A LIBVIRT_PRT -s 192.168.122.0/24 ! -d 192.168.122.0/24 -p tcp -j MASQUERADE --to-ports 1024-65535
-A LIBVIRT_PRT -s 192.168.122.0/24 ! -d 192.168.122.0/24 -p udp -j MASQUERADE --to-ports 1024-65535
-A LIBVIRT_PRT -s 192.168.122.0/24 ! -d 192.168.122.0/24 -j МАСКАРАД
СОВЕРШИТЬ
# Завершено в понедельник, 3 января, 22:03:26 2022 г.
# Сгенерировано iptables-save v1.8.4, понедельник, 3 января, 22:03:26 2022 г.
*фильтр
:ВВОД ПРИНЯТЬ [86966:77359331]
:ВПЕРЕД ПРИНЯТЬ [0:0]
: ВЫВОД ПРИНЯТ [69220:7582632]
:LIBVIRT_FWI - [0:0]
:LIBVIRT_FWO - [0:0]
:LIBVIRT_FWX - [0:0]
:LIBVIRT_INP - [0:0]
:LIBVIRT_OUT - [0:0]
-A ВХОД -j LIBVIRT_INP
-A ВПЕРЕД -j LIBVIRT_FWX
-A ВПЕРЕД -j LIBVIRT_FWI
-A ВПЕРЕД -j LIBVIRT_FWO
-A ВЫВОД -j LIBVIRT_OUT
-A LIBVIRT_FWI -d 192.168.122.0/24 -o virbr0 -m conntrack --ctstate СВЯЗАННО, УСТАНОВЛЕНО -j ПРИНЯТЬ
-A LIBVIRT_FWI -o virbr0 -j REJECT --reject-with-icmp-port-unreachable
-A LIBVIRT_FWO -s 192.168.122.0/24 -i virbr0 -j ПРИНЯТЬ
-A LIBVIRT_FWO -i virbr0 -j REJECT --reject-with-icmp-port-unreachable
-A LIBVIRT_FWX -i virbr0 -o virbr0 -j ПРИНЯТЬ
-A LIBVIRT_INP -i virbr0 -p udp -m udp --dport 53 -j ПРИНЯТЬ
-A LIBVIRT_INP -i virbr0 -p tcp -m tcp --dport 53 -j ПРИНЯТЬ
-A LIBVIRT_INP -i virbr0 -p udp -m udp --dport 67 -j ПРИНЯТЬ
-A LIBVIRT_INP -i virbr0 -p tcp -m tcp --dport 67 -j ПРИНЯТЬ
-A LIBVIRT_OUT -o virbr0 -p udp -m udp --dport 53 -j ПРИНЯТЬ
-A LIBVIRT_OUT -o virbr0 -p tcp -m tcp --dport 53 -j ПРИНЯТЬ
-A LIBVIRT_OUT -o virbr0 -p udp -m udp --dport 68 -j ПРИНЯТЬ
-A LIBVIRT_OUT -o virbr0 -p tcp -m tcp --dport 68 -j ПРИНЯТЬ
СОВЕРШИТЬ
# Завершено в понедельник, 3 января, 22:03:26 2022 г.
РЕДАКТИРОВАТЬ 3
Вывод sudo iptables-сохранить
(Гость):
# Сгенерировано iptables-save v1.4.7, четверг, 6 января, 05:53:35 2022
*фильтр
:ВВОД ПРИНЯТЬ [0:0]
:ВПЕРЕД ПРИНЯТЬ [0:0]
: ВЫВОД ПРИНЯТЬ [0:0]
-A INPUT -p tcp -m tcp --dport 22 -m conntrack --ctstate НОВЫЙ, УСТАНОВЛЕННЫЙ -j ПРИНЯТЬ
-A ВЫВОД -p tcp -m tcp --sport 22 -m conntrack --ctstate УСТАНОВЛЕНО -j ПРИНЯТЬ
СОВЕРШИТЬ
# Завершено в четверг, 6 января, 05:53:35 2022 г.