Điểm:2

VM khách QEMU/KVM không thể phân giải tên máy chủ DNS hoặc SSH/ping từ máy chủ

lá cờ mx

Tôi có một máy ảo dựa trên QEMU/KVM với CentosOS 6.4 không thể kết nối hoàn toàn với Internet. Tôi có thể ping địa chỉ IP (ví dụ: ping 8.8.8.8 hoạt động thành công), nhưng tên miền không được giải quyết (ví dụ: truy cập google.com lợi nhuận ping: máy chủ không xác định google.com).

Khách được gán một IP tĩnh và tôi đang sử dụng mạng mặc định (dựa trên 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 không có trên VM; và không phải của độ phân giải, nslookup, hệ thống, chủ nhà, tên máy chủ, hoặc nmcli các chương trình đã được cài đặt, vì vậy khả năng chạy chẩn đoán cài đặt mạng bị hạn chế.

Tôi đã thử những cách sau:

  • chỉnh sửa /etc/sysconfig/network-scripts/ifcfg-eth0 bằng cách thêm DNS1=8.8.8.8, DNS2=8.8.4.4PEERDNS=có. Sau khi khởi động lại, điều này đã tạo /etc/resolv.conf, mà ban đầu không có mặt.
  • Thay thế "hosts: files dns" bằng "hosts: files dns nisplus nis" trong /etc/nsswitch.conf, sau đó khởi động lại.
  • Tiếp theo hướng dẫn này để tạo một mạng chỉ lưu trữ.
  • Tiếp theo hướng dẫn này để tạo một cây cầu ảo thông qua qemu-bridge-helper.
  • (Bên cạnh đó, tôi đã cố gắng tạo một tệp chia sẻ giữa khách và máy chủ thông qua hướng dẫn này, nhưng điều này yêu cầu 9p, một hệ thống tệp mà CentOS 6 dường như không tương thích.)

Nhưng với mỗi lần thử, máy chủ vẫn không thể SSH vào/ping máy khách, khách cũng không thể phân giải tên miền. Bất kỳ trợ giúp nào để hoàn thành một trong hai bước này (máy chủ có thể SSH vào máy khách; khách được kết nối đầy đủ với Internet) sẽ được đánh giá rất cao.

Dưới đây là một số nội dung tệp/đầu ra dòng lệnh có thể hữu ích. Rất vui được cung cấp thêm thông tin.

nội dung của /etc/resolv.conf (Khách):

tùy chọn quảng cáo tin cậy edns0
; được tạo bởi /sbin/dhclient-script
máy chủ định danh 8.8.8.8
máy chủ định danh 8.8.4.4

đầu ra của ip một (Khách):

1: lo: <LOOPBACK,UP,LOWER_UP> mtu 16436 trạng thái qdisc noqueue CHƯA BIẾT
    liên kết/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
    máy chủ phạm vi inet 127.0.0.1/8 lo
    inet6 ::1/128 máy chủ phạm vi 
       hợp lệ_lft mãi mãi ưa thích_lft mãi mãi


2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc trạng thái pfifo_fast LÊN qlen 1000
    liên kết/ether 52:54:00:7b:6c:27 brd ff:ff:ff:ff:ff:ff
    inet 192.168.122.92/22 brd 192.168.123.255 phạm vi toàn cầu eth0
    liên kết phạm vi inet6 fe80::5054ï¬fe7b:6c27/64
       hợp lệ_lft mãi mãi ưa thích_lft mãi mãi

đầu ra của ssh 192.168.122.92 (Chủ nhà):

ssh: kết nối với máy chủ 192.168.122.92 cổng 22: Kết nối bị từ chối

đầu ra của ping 192.168.122.92 (Chủ nhà):

PING 192.168.122.92 (192.168.122.92) 56(84) byte dữ liệu.
Từ 192.168.122.1 icmp_seq=1 Không thể truy cập cổng đích
ping: sendmsg: Thao tác không được phép
Từ 192.168.122.1 icmp_seq=2 Không thể truy cập cổng đích
ping: sendmsg: Thao tác không được phép
Từ 192.168.122.1 icmp_seq=3 Cổng đích không thể truy cập
ping: sendmsg: Thao tác không được phép
Từ 192.168.122.1 icmp_seq=4 Cổng đích Không thể truy cập
ping: sendmsg: Thao tác không được phép
^C
--- Thống kê ping 192.168.122.92 ---
Truyền 4 gói, 0 nhận, +4 lỗi, mất gói 100%, thời gian 3065ms

CHỈNH SỬA 1

nội dung của /etc/sysconfig/network-scripts/ifcfg-eth0 (Khách):

THIẾT BỊ=eth0
HWADDR=52:54:00:7B:6C:27
LOẠI=Ethernet
BẬT = có
NM_CONTROLLED=không
BOOTPRONTO=không
IPADDR=192.168.122.92
MẠNG=255.255.252.0
GATEWAY=192.168.122.1
DNS1=8.8.8.8
DNS2=8.8.4.4
PEERDNS=có

CHỈNH SỬA 2

đầu ra của iptables-save (Chủ nhà):

# Được tạo bởi iptables-save v1.8.4 vào Thứ Hai ngày 3 tháng 1 22:03:26 năm 2022
* mangle
: CHẤP NHẬN TRƯỚC [86972:77359835]
:INPUT CHẤP NHẬN [86966:77359331]
: CHẤP NHẬN TRƯỚC [6:504]
:CHẤP NHẬN ĐẦU RA [87805:9060728]
:CHẤP NHẬN SAU ĐÓ [69226:7583136]
:LIBVIRT_PRT - [0:0]
-A POSTROUTING -j LIBVIRT_PRT
-A LIBVIRT_PRT -o virbr0 -p udp -m udp --dport 68 -j KIỂM TRA --checksum-fill
LÀM
# Hoàn thành vào Thứ 2 ngày 3 tháng 1 22:03:26 2022
# Được tạo bởi iptables-save v1.8.4 vào Thứ Hai ngày 3 tháng 1 22:03:26 năm 2022
*tự nhiên
: CHẤP NHẬN TRƯỚC [4:1038]
:CHẤP NHẬN ĐẦU VÀO [3:954]
:CHẤP NHẬN ĐẦU RA [19614:1550200]
:CHẤP NHẬN SAU ĐÓ [1032:73142]
:LIBVIRT_PRT - [0:0]
-A POSTROUTING -j LIBVIRT_PRT
-A LIBVIRT_PRT -s 192.168.122.0/24 -d 224.0.0.0/24 -j TRẢ LẠI
-A LIBVIRT_PRT -s 192.168.122.0/24 -d 255.255.255.255/32 -j TRẢ LẠI
-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 MẶT MẠO
LÀM
# Hoàn thành vào Thứ 2 ngày 3 tháng 1 22:03:26 2022
# Được tạo bởi iptables-save v1.8.4 vào Thứ Hai ngày 3 tháng 1 22:03:26 năm 2022
*lọc
:INPUT CHẤP NHẬN [86966:77359331]
:CHẤP NHẬN TRƯỚC [0:0]
:CHẤP NHẬN ĐẦU RA [69220:7582632]
:LIBVIRT_FWI - [0:0]
:LIBVIRT_FWO - [0:0]
:LIBVIRT_FWX - [0:0]
:LIBVIRT_INP - [0:0]
:LIBVIRT_OUT - [0:0]
-A INPUT -j LIBVIRT_INP
-A VỀ PHÍA TRƯỚC -j LIBVIRT_FWX
-A VỀ PHÍA TRƯỚC -j LIBVIRT_FWI
-A VỀ PHÍA TRƯỚC -j LIBVIRT_FWO
-A ĐẦU RA -j LIBVIRT_OUT
-A LIBVIRT_FWI -d 192.168.122.0/24 -o virbr0 -m conntrack --ctstate LIÊN QUAN, ĐÃ THÀNH LẬP -j CHẤP NHẬN
-A LIBVIRT_FWI -o virbr0 -j REJECT --reject-with icmp-port-unreachable
-A LIBVIRT_FWO -s 192.168.122.0/24 -i virbr0 -j CHẤP NHẬN
-A LIBVIRT_FWO -i virbr0 -j REJECT --reject-with icmp-port-unreachable
-A LIBVIRT_FWX -i virbr0 -o virbr0 -j CHẤP NHẬN
-A LIBVIRT_INP -i virbr0 -p udp -m udp --dport 53 -j CHẤP NHẬN
-A LIBVIRT_INP -i virbr0 -p tcp -m tcp --dport 53 -j CHẤP NHẬN
-A LIBVIRT_INP -i virbr0 -p udp -m udp --dport 67 -j CHẤP NHẬN
-A LIBVIRT_INP -i virbr0 -p tcp -m tcp --dport 67 -j CHẤP NHẬN
-A LIBVIRT_OUT -o virbr0 -p udp -m udp --dport 53 -j CHẤP NHẬN
-A LIBVIRT_OUT -o virbr0 -p tcp -m tcp --dport 53 -j CHẤP NHẬN
-A LIBVIRT_OUT -o virbr0 -p udp -m udp --dport 68 -j CHẤP NHẬN
-A LIBVIRT_OUT -o virbr0 -p tcp -m tcp --dport 68 -j CHẤP NHẬN
LÀM
# Hoàn thành vào Thứ 2 ngày 3 tháng 1 22:03:26 2022

CHỈNH SỬA 3

đầu ra của Sudo iptables-save (Khách):

# Được tạo bởi iptables-save v1.4.7 vào Thứ Năm ngày 6 tháng 1 05:53:35 năm 2022
*lọc
:INPUT CHẤP NHẬN [0:0]
:CHẤP NHẬN TRƯỚC [0:0]
:CHẤP NHẬN ĐẦU RA [0:0]
-A INPUT -p tcp -m tcp --dport 22 -m conntrack --ctstate MỚI, ĐƯỢC THÀNH LẬP -j CHẤP NHẬN
-A ĐẦU RA -p tcp -m tcp --sport 22 -m conntrack --ctstate THÀNH LẬP -j CHẤP NHẬN
LÀM
# Hoàn thành vào Thứ Năm ngày 6 tháng 1 05:53:35 2022
another victim of the mouse avatar
lá cờ cf
> inet 192.168.122.92/**22** brd 192.168.123.255 phạm vi toàn cầu eth0 Có vẻ khó hiểu đối với tôi. Chúng tôi có thể xem `cat /etc/sysconfig/network-scripts/ifcfg-eth0` không? Có vẻ như bạn đã đeo mặt nạ lưới không chính xác cho khách của mình.> MẠNG=255.255.252.0
another victim of the mouse avatar
lá cờ cf
> inet 192.168.122.92/**22** brd 192.168.123.255 phạm vi toàn cầu eth0 Trông tanh với tôi. Chúng tôi có thể xem `cat /etc/sysconfig/network-scripts/ifcfg-eth0` không?
lá cờ mx
Cảm ơn @Jacobyoby. Tôi đã thêm thông tin ở trên.
another victim of the mouse avatar
lá cờ cf
mặt nạ lưới của bạn không phù hợp. Đây có phải là cố ý?
lá cờ mx
Nó không cố ý. Tôi đã đặt `NETMASK=255.255.255.0` trong `/etc/sysconfig/network-scripts/ifcfg-eth0` để khớp với mạng ảo. Bây giờ tôi nhận được `inet 192.168.122.92/24 brd 192.168.122.255 phạm vi toàn cầu eth0` trong `eth0` trong `ip a` trong khách. Nhưng DNS vẫn không phân giải tên miền và không thể truy cập IP khách qua SSH/ping trong máy chủ.
another victim of the mouse avatar
lá cờ cf
bạn đã tắt tường lửa để kiểm tra chưa?
lá cờ mx
@Jacobyoby @AlexD Không phải tường lửa, nhưng có khả năng là do hai quy tắc này trong `iptables`: `-A LIBVIRT_FWI -o virbr0 -j REJECT --reject-with icmp-port-unreachable` và `-A LIBVIRT_FWO -i virbr0 - j REJECT --reject-with icmp-port-unreachable` (chi tiết hơn ở trên). Tuy nhiên, tôi (tạm thời) đã xóa chúng, khởi động lại máy khách VM và vẫn gặp lỗi tương tự.
another victim of the mouse avatar
lá cờ cf
vui lòng thêm quy tắc để cho phép SSH gửi đến trên cổng 22 vào iptables.
lá cờ mx
Tôi đã thêm hai quy tắc mới vào iptables trong khách: `Sudo iptables -A INPUT -p tcp --dport 22 -m conntrack --ctstate NEW,ESTABLISHED -j ACCEPT` và `Sudo iptables -A OUTPUT -p tcp --sport 22 -m conntrack --ctstate ĐÃ THÀNH LẬP -j CHẤP NHẬN`. Tôi cũng đã thêm `Sudo iptables -A OUTPUT -p tcp --dport 22 -m conntrack --ctstate NEW,ESTABLISHED -j ACCEPT` và `Sudo iptables -A INPUT -p tcp --sport 22 -m conntrack --ctstate ESTABLISHED -j CHẤP NHẬN` cho máy chủ. Tuy nhiên, tôi nhận được các lỗi tương tự. Tôi có thiếu thứ gì không?
another victim of the mouse avatar
lá cờ cf
bạn có thể tắt iptables để thử nghiệm không?
Điểm:1
lá cờ jp

Các thông báo lỗi sau đây từ ping chỉ ra rằng giao tiếp bị chặn bởi tường lửa.

Cổng đích không thể truy cập
ping: sendmsg: Thao tác không được phép
lá cờ mx
Hóa ra VPN là vấn đề. Tắt VPN hoặc cho phép chia sẻ mạng cục bộ trong VPN, đã khắc phục sự cố. Bây giờ tôi có thể ping/SSH vào máy khách VM thành công. Cảm ơn mọi người!

Đăng câu trả lời

Hầu hết mọi người không hiểu rằng việc đặt nhiều câu hỏi sẽ mở ra cơ hội học hỏi và cải thiện mối quan hệ giữa các cá nhân. Ví dụ, trong các nghiên cứu của Alison, mặc dù mọi người có thể nhớ chính xác có bao nhiêu câu hỏi đã được đặt ra trong các cuộc trò chuyện của họ, nhưng họ không trực giác nhận ra mối liên hệ giữa câu hỏi và sự yêu thích. Qua bốn nghiên cứu, trong đó những người tham gia tự tham gia vào các cuộc trò chuyện hoặc đọc bản ghi lại các cuộc trò chuyện của người khác, mọi người có xu hướng không nhận ra rằng việc đặt câu hỏi sẽ ảnh hưởng—hoặc đã ảnh hưởng—mức độ thân thiện giữa những người đối thoại.