【原創】kvm虛擬機中無法進行dns域名解析的問題


環境:

物理機:CentOS 5.6 x86_64 + KVM

虛擬機:CentOS 5.6 x86_64, Windows 2003 server

問題:

  • 在物理機上可以使用域名訪問網網站,在虛擬機中卻無法使用域名訪問網站,但可以通過ip訪問網站。
  • 關閉物理機的防火牆(iptables)后,虛擬機可以使用域名訪問網站

分析:

應該是物理機防火牆(iptables)配置的問題

解決:

物理機防火牆對虛擬機的域名解析有影響。
 
域名解析使用53號端口,因此查看物理機的53號端口:
[root@centos56 ~]# netstat -ano |grep 53
tcp        0      0 192.168.122.1:53            0.0.0.0:*                   LISTEN      off (0.00/0/0)
tcp        0      0 211.98.99.249:5904          61.237.253.2:10455          ESTABLISHED off (0.00/0/0)
tcp        0      0 211.98.99.249:445           61.237.253.2:35742          ESTABLISHED keepalive (3697.76/0/0)
tcp        0     52 211.98.99.249:22            61.237.253.2:41058          ESTABLISHED on (0.41/0/0)
tcp        0      0 211.98.99.249:5904          61.237.253.2:61023          ESTABLISHED off (0.00/0/0)
tcp        0      0 211.98.99.249:5903          61.237.253.2:32072          ESTABLISHED off (0.00/0/0)
tcp        0      0 211.98.99.249:5902          61.237.253.2:16918          ESTABLISHED off (0.00/0/0)
tcp        0      0 211.98.99.249:445           61.237.253.2:34823          ESTABLISHED keepalive (4749.99/0/0)
udp        0      0 192.168.122.1:53            0.0.0.0:*                               off (0.00/0/0)
udp        0      0 0.0.0.0:5353                0.0.0.0:*                               off (0.00/0/0)
192.168.122.1上開了53號端口,原來kvm在virbr0上開了域名解析服務。
 
192.168.122.1是虛擬網橋virbr0的ip
[root@centos56 ~]# ifconfig virbr0
virbr0    Link encap:Ethernet  HWaddr 00:00:00:00:00:00  
          inet addr:192.168.122.1  Bcast:192.168.122.255  Mask:255.255.255.0
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:0 errors:0 dropped:0 overruns:0 frame:0
          TX packets:2086 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:0 
          RX bytes:0 (0.0 b)  TX bytes:548897 (536.0 KiB)

 

 
解決:
修改物理機iptables配置,把53號端口加入防火牆
 
[root@centos56 ~]# vi /etc/sysconfig/iptables

# Firewall configuration written by system-config-securitylevel
# Manual customization of this file is not recommended.
*filter
:INPUT ACCEPT [0:0]
:FORWARD ACCEPT [0:0]
:OUTPUT ACCEPT [0:0]
:RH-Firewall-1-INPUT - [0:0]
-A INPUT -j RH-Firewall-1-INPUT
-A FORWARD -j RH-Firewall-1-INPUT
-A RH-Firewall-1-INPUT -i lo -j ACCEPT
-A RH-Firewall-1-INPUT -p icmp --icmp-type any -j ACCEPT
-A RH-Firewall-1-INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
-A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 22 -j ACCEPT
-A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 80 -j ACCEPT
-A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 21 -j ACCEPT
-A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 5901 -j ACCEPT
-A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 5902 -j ACCEPT

-A RH-Firewall-1-INPUT -m state --state NEW -m udp -p udp --dport 138 -j ACCEPT
-A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 139 -j ACCEPT
-A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 445 -j ACCEPT

-A RH-Firewall-1-INPUT -m state --state NEW -m udp -p udp --dport 53 -j ACCEPT
-A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 53 -j ACCEPT


-A RH-Firewall-1-INPUT -j REJECT --reject-with icmp-host-prohibited

COMMIT
 

上述修改完成后,使用service iptables restart重啟防火牆


注意!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系我们删除。



 
粤ICP备14056181号  © 2014-2021 ITdaan.com