2013/3/28 cochen <workhardcc@163.com>
Hi developer, i got a problem and need your help!(my english not very good)
       My KVM host in IDC, and there are some restrict in there lead to me connect to KVM host by port 22 or 16509 impossible. In generally If i want login my KVM host i must login in to a "stepping stones" first, then login to that KVM host.( Now assume that the KVM host ip is 1.1.1.1 and the "stepping stones" ip is 2.2.2.2).
       So i use the "port forwarding" (i used the manner of "qemu+tcp" to connect KVM host, the default port is 16509), I visit the port 16509 in "stepping stones" machine 1.1.1.1 and then 1.1.1.1 port forwarding to 2.2.2.2:16509. And then my virt-manager connect KVM host successful!
       But my trouble is comming too. I can't use virt-manager to control my guest by graphic. I "port forwarding" the port 5911(i had already defined  my guest vnc port), but is unuseful. I used command "netstat -antl" in KVM host found that :
tcp        0      0 127.0.0.1:5911              0.0.0.0:*                   LISTEN
tcp        0      0 1.1.1.1:16509            2.2.2.2:63325             ESTABLISHED
tcp        0      0 0.0.0.0:16509               0.0.0.0:*                   LISTEN 

As you see, 5911 listen into localhost(127.0.0.1), but 16509 listen into the 1.1.1.1 and 0.0.0.0. So I think if 5911 listen 0.0.0.0 or 1.1.1.1 everything is ok.
Hi cochen,you can use virsh edit vmname to modify the vnc listen address:
    <graphics type='vnc' port='5911' autoport='no' listen='0.0.0.0' >
      <listen type='address' address='0.0.0.0'/>
    </graphics>