У меня Ubuntu 10.04 с Oracle VirtualBox 3.2.6 с гостевой ОС Windows XP. Я использую VPN, к которой я хотел бы получить доступ для гостевой виртуальной машины, в ifconfig он отображается как:
tun0 Link encap:UNSPEC HWaddr 00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00
inet addr:5.192.10.99 P-t-P:5.192.10.99 Mask:255.255.255.255
UP POINTOPOINT RUNNING NOARP MULTICAST MTU:1362 Metric:1
RX packets:14151 errors:0 dropped:0 overruns:0 frame:0
TX packets:19860 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:500
RX bytes:4415271 (4.4 MB) TX bytes:17949982 (17.9 MB)
Использование адаптеров NAT или Bridge на виртуальной машине дает мне только адаптер без vpn. Как я могу сопоставить адаптер tun0 с VirtualBox?
Вы, вероятно, сможете это сделать, но я бы не рекомендовал этого.
Для этого нужно, чтобы виртуальная машина установила собственное VPN-соединение с целевым сервером / сетью.
Теперь, если вы действительно хотите это сделать, вам нужно будет создать еще один мост на хосте, а затем создать туннельный интерфейс как статический интерфейс (т.е. не создается VPN при запуске) и добавляет его в мост. Только тогда этот туннель становится доступным для виртуальной машины. Затем VirtualBox можно дать указание виртуализировать этот интерфейс, что сделает его доступным для виртуальной машины.
Часть, в которой я не уверен, заключается в том, можно ли создать туннель вне VPN-клиента, а затем сделать его доступным для использования клиентом. Возможно, вам придется искать устройства Tap, а не устройства tun.
Это может стать довольно сложным и приведет к ситуации, когда у вашего клиента виртуальной машины может не быть сети, если VPN не работает (если вы также не виртуализируете другой мост). Как уже было сказано, я бы не рекомендовал этого.
Настройка /etc/sysctl.conf
:
net.ipv4.ip_forward=1
Затем запускаем:
sudo sysctl -p
(Не обязательно, но) Я перезагрузился после этого и обнаружил, что он работает.