Вам нужно понять сеть, которая у вас есть. Существует (по крайней мере 2 )точек, где связь может быть прервана, и вам необходимо устранить их все, прежде чем вы сможете получить доступ к устройству извне.
Судя по описанию, у вас есть TAP-устройство на вашей локальной машине, которое слушает сервер. Обычно вы не сможете получить доступ к этому TAP-интерфейсу из-за пределов вашей Linux-машины, даже из другой виртуальной машины в сети VMWare. Решение состоит в том, чтобы подключить TAP к ethernet-интерфейсу Linux (, который должен быть eth0, если только у вас нет глупой схемы RedHat; используйте ifconfig, чтобы быть уверенным)
Итак, сначала создайте мост:
ip link add br0 type bridge
Затем добавьте устройства в мост (Я предполагаю, что это tap0, так же как я предполагал, что это должен быть eth0):
ip link set tap0 master br0
ip link set dev eth0 down
ip addr flush dev eth0
ip link set dev eth0 up
ip link set eth0 master br0
И убедитесь, что мост поднят:
ip link set dev br0 up
Теперь вы сможете получить доступ к серверу на tap0 с виртуальной машины в той же виртуальной сети VMWare. Вы должны проверить это, запустив -вторую виртуальную машину.
В вашем виртуальном Linux-боксе теперь есть следующая сеть:
+------+ +-------+
| tap0 | | eth0 |
+------+ +-------+
| | |
+-------------+ +--------
bridge 0 "outside world"
Далее :как эта виртуальная сеть VMWare соединяется с внешним миром? Эта сеть также подключена к вашему Mac? Или это NAT? В этом случае вы должны указать некоторые правила переадресации портов. Не уверен, как это работает в VMWare, потому что, как и многие, я использую VirtualBox.
В VirtualBox «внешний мир» может быть несколькими вещами, наиболее важными из которых являются:
Bridged Adapter :, как и в случае с интерфейсом tap -, виртуальный интерфейс подключен к внешнему интерфейсу хоста, на котором работает VirtualBox. Виртуальная машина будет иметь собственный внешний IP-адрес.
NAT :виртуальный интерфейс соединен с внешним, но через NAT (Network Address Translation ).Именно так большинство маршрутизаторов SOHO DSL подключаются к Интернету. Снаружи есть один IP-адрес, и если вы хотите получить доступ к машине извне, вы должны настроить -переадресацию портов (никогда этого не делали; не уверен, что это возможно в VirtualBox)
Только хост -:Отдельная сеть, которая должна быть доступна только в среде VirtualBox.
Таким образом, в VirtualBox мостовой адаптер лучше всего подходит для вас.
Предполагая, что вы используете мост в VirtualBox, теперь у вас будет следующая сеть:
+------+ +-----+ }
| tap0 | | eth0| }
+------+ +-----+ } in your Linux virtual machine
| br0 | | }
+------------+ | }
|
Your host (mac) |
-----------------+ |
| |
+-----------+ physical outside world
| mac's eth0|--------------
+-----------+
Другими вопросами, на которые следует обратить внимание, являются ваш тарифный план IP и подсети.
void linux
с нуля::sudo xbps-install base-devel libX11-devel libXft-devel libXinerama-devel freetype-devel fontconfig-devel
arch linux
с нуля::sudo pacman -S base-devel libx11 libxft libxinerama freetype2 fontconfig