공용 IP 보유를 위한 QEMU 네트워크 브리징

공용 IP 보유를 위한 QEMU 네트워크 브리징

나는 QEMU VM에 공용 IP가 있어서 동일한 시스템에서 여러 서버를 실행할 수 있기를 원합니다. 나는 많은 위키, 가이드, 튜토리얼, 포럼 스레드 및 이와 관련된 모든 것을 읽었지만 여전히 유용한 답변은 없습니다. 나는 이미 교량에 대해 알고 있으며 대부분의 튜토리얼에서 수행하는 작업을 모두 수행했습니다.

1) iproute2를 사용하여 브리지 생성(예: br0)
2) TAP 인터페이스 생성(예: tap0)
3) 브리지 eth0(내 경우에는 enp2s0) tap0br0

하지만 내가 가진 유일한 것은 (두려운 것 외에) VM이 내부 네트워크의 다른 머신으로 인식되도록 만드는 것입니다. 그러나 내가 원하는 것은 외부 네트워크가 내 머신을 자체 공용 IP 주소로 보는 것입니다. 라우터에 연결된 나머지 물리적 시스템과 같습니다.

내가 살펴본 페이지:
-https://wiki.archlinux.org/index.php/QEMU#Networking
-https://wiki.archlinux.org/index.php/Network_bridge
-KVM - 브리지를 통해 공용 IP 추가
-http://blog.elastocloud.org/2015/07/qemukvm-bridged-network-with-tap.html
-https://wiki.qemu.org/Documentation/Networking
-http://nairobi-embedded.org/a_qemu_tap_networking_setup.html
-https://en.wikibooks.org/wiki/QEMU/Networking

내 QEMU cmd 인수:

qemu-system-x86_64 \
    -monitor stdio \
    -soundhw ac97 \
    -k es \
    -machine accel=kvm \
    -m 2024 \
    -hda /mnt/hdd/Desarrollo_Eficiente_HDA.img \
    -boot once=c,menu=on \
    -net nic,vlan=0,macaddr=00:c6:cd:1a:5e:83,model=virtio \
    -net tap,vlan=0,ifname=tap0,script=no \
    -rtc base=localtime \

기타 명령 출력:

$ brctl show
bridge name     bridge id               STP enabled     interfaces
br0             8000.003067a647ca       no              enp2s0
                                                        tap0
$ ip address 
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
    inet 127.0.0.1/8 brd 127.255.255.255 scope host lo
       valid_lft forever preferred_lft forever
    inet6 ::1/128 scope host 
       valid_lft forever preferred_lft forever
2: enp2s0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast master br0 state UP group default qlen 1000
    link/ether 00:30:67:a6:47:ca brd ff:ff:ff:ff:ff:ff
    inet6 fe80::da85:a46d:3e50:2642/64 scope link 
       valid_lft forever preferred_lft forever
9: br0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue state UP group default qlen 1000
    link/ether 00:30:67:a6:47:ca brd ff:ff:ff:ff:ff:ff
    inet 192.168.0.3/24 brd 192.168.0.255 scope global noprefixroute br0
       valid_lft forever preferred_lft forever
    inet 192.168.50.14/24 brd 192.168.50.255 scope global noprefixroute br0
       valid_lft forever preferred_lft forever
    inet6 fe80::230:67ff:fea6:47ca/64 scope link noprefixroute 
       valid_lft forever preferred_lft forever
10: tap0: <NO-CARRIER,BROADCAST,MULTICAST,PROMISC,UP> mtu 1500 qdisc pfifo_fast master br0 state DOWN group default qlen 100
    link/ether 16:51:80:cd:dd:6b brd ff:ff:ff:ff:ff:ff
    inet6 fe80::1451:80ff:fecd:dd6b/64 scope link 
       valid_lft forever preferred_lft forever

호스트 시스템 정보:
- OS: Parabola GNU/Linux-libre(Arch 기반)
- 아키텍처: x86_64

내가 뭔가를 놓친 걸까요? iptables 규칙? sysctl 명령? 도움을 주셔서 미리 감사드립니다.

관련 정보