1

私は KVM を初めて使用し、ここで多くのスレッドを読みましたが、私の場合はどれも役に立ちませんでした。

KVM ホストにゲストがいて、ホストからゲストのポート 80 にポート 80 を転送したいと考えています。私はiptablesでこれを行いました:

Guest_name=theguest
Guest_ipaddr=192.168.122.43
Host_port=( '80' )
Guest_port=( '80' )
length=$(( ${#Host_port[@]} - 1 ))
if [ "${1}" = "${Guest_name}" ]; then
   if [ "${2}" = "stopped" -o "${2}" = "reconnect" ]; then
       for i in `seq 0 $length`; do
               iptables -t nat -D PREROUTING -p tcp --dport ${Host_port[$i]} -j DNAT --to ${Guest_ipaddr}:${Guest_port[$i]}
               iptables -D FORWARD -d ${Guest_ipaddr}/32 -p tcp -m state --state NEW -m tcp --dport ${Guest_port[$i]} -j ACCEPT
       done
   fi
   if [ "${2}" = "start" -o "${2}" = "reconnect" ]; then
       for i in `seq 0 $length`; do
               iptables -t nat -A PREROUTING -p tcp --dport ${Host_port[$i]} -j DNAT --to ${Guest_ipaddr}:${Guest_port[$i]}
               iptables -I FORWARD -d ${Guest_ipaddr}/32 -p tcp -m state --state NEW -m tcp --dport ${Guest_port[$i]} -j ACCEPT
       done
   fi
fi

全体的にこれは機能しますが、常にではありません。Apache への http リクエストは機能しているため、ルールは正しいようです。http アドレスに対して wget リクエストを実行しても、何も起こりません。FTPアドレスにwgetリクエストを行うと(--user = theusername --password = thepasswordを使用)、機能します。

最大の問題: apt-get update が機能していません。行うことは次のとおりです。

0% [Verbindung mit de.archive.ubuntu.com (141.30.13.20)] [Verbindung mit security.ubuntu.com (91.189.91.13)]

この段階では、Ctrl-C のみが役に立ちます。

KVM xml ファイルのネットワークは次のように構成されています。

<interface type='network'>
  <source network="default"/>
  <mac address='themacaddress'/>
  <model type='virtio'/>
  <address type='pci' domain='0x0000' bus='0x00' slot='0x03' function='0x0'/>
</interface>

誰でも助けることができますか?よろしくお願いします!

4

0 に答える 0