Алоха.
Подскажите, пожалуйста, как настроить локальную сеть из нескольких виртуальных машин, причем одна из них должна раздавать интернет, а остальные сосать его и работать? пользуюсь virtualbox
Спасибо

37 Responses to Алоха.

  1. CmmCap:

    Тестовый стенд?

  2. R0bPhone:

    : хост что ли? windows 7 ultimate x64
    виртуальные машины ubuntu 12.04 (4 шт.)
    настроил их все через сетевой мост и статику прописал.

    Проблема в том, что я чайник и даже не знаю, как проверить, видят они друг друга или нет

  3. R0bPhone:

    : они друг друга видят, я идиот.
    осталось как то заставить одного получать инет, а остальных сосать его

  4. LehApp:

    За виртуалбокс точно не скажу, но скорее всего схема будет выглядеть так:
    Проброс ethernet-порта с инетом в виртуалку, остальные в виртуальном хабе друг с другом и с раздающей машиной.

  5. Eroen:

    : В простейшем случае — на сосущих прописать дефолтный шлюз и ДНС. На раздающем шлюзе включить ip-форвардинг, snat при необходимости, поднять dns при необходимости. Как планируется получать инет непонятно, если через хостовую машину — просто указать ее дефолтным шлюзом.

  6. R0bPhone:

    : че за виртуальный хаб, подскажи?

  7. R0bPhone:

    : получать инет планируется с первой машины, сосут 2,3,4

  8. Rodef:

    : Сразу видно прожжёного виндузятника, ни в жизнь не будут ни гуглить, ни документацию читать.
    http://www.virtualbox.org/manual/ch06.ht…

  9. R0bPhone:

    : да я гуглил, и эту страницу видел, но я в инглише ни бум-бум, именно поэтому прошу помощи у высшего разума

  10. LehApp:

    : хуй знает как там в виндах. Если у тебя такое построение виртуальной сети, что каждая из виртуалок создает интерфейс внутри себя и на реальной машине, то думаю будет достаточно объеденить интерфейсы на реальной тачке в бридж и все.

  11. Rodef:

    : Виртуалбокс умеет изображать виртуальную сеть, чтобы виртуалки в этой сети кроме друг друга никуда не вылазили. Internal Network, короче.

  12. LehApp:

    : ну и вообще заебись тогда.

  13. Losgreen:

    : не делает. в виртуалбоксе интерфейс делается только для какой-то сети. и то, если не изменяет память, делать сети можно только изолированные, т.е. связанные только с хостом и без ната, а нат там как-то через жопу. вмваре в этом плане гораздо лучше. но увы, с ляликсом на мой взгляд, виртуалбокс дружит гораздо лучше вмвар плеера.

  14. LehApp:

    : «связанные только с хостом и без ната» ну так блять, я о чем и говорю — на хосте их бриджуем и вуаля )

  15. R0bPhone:

    : они все на одну сетевку подключены, 4 виртуалки, одна сетевка, как я тебе одну сетевку бриджану?

  16. LehApp:

    : вон выше написали — «делать сети можно только изолированные, т.е. связанные только с хостом», у тебя между хостом и каждой виртуалкой своя сеть. Т.е. на хосте ты видишь 4 интерфейса, каждый из которых связан со своей виртуалкой. Вот их и бриджевать.

  17. Losgreen:

    : чего бриджуем? они в host only network, со стороны хоста виден только его интерфейс, которым он в эту же самую host only network воткнут. если тачки видят друг друга в этой сети, то да, можно просто одну из них воткнуть и в nat, и в host only, затем настроить форвардинг и нат. но даже если так, ты не видишь ту машину, что будет остальным раздавать инет, со стороны nat-интерфейса. то есть тебе на неё можно будет заходить только со стороны внутренней сети.

  18. Losgreen:

    : да не видишь ты на хосте 4 отдельных интерфейса, не видишь и всё.

  19. R0bPhone:

    короче я немного переделал, на главной машине, которая будет раздавать инет, стоит нат и сетка которую я создал (internal network), dhcp средствами virtualbox.
    в остальных машинах только эта сетка.
    как сделать так, чтобы они брали инет у первой тачки с натом?
    dhcp сервер 10.0.1.100
    первая тачка 10.0.1.101
    остальные 10.0.1.102-104

  20. Losgreen:

    : http://txt.binnyva.com/2007/04/sharing-a…
    только тебе ещё придётся прописать адрес раздающей тачки в каждой из машин в качестве шлюза.

  21. R0bPhone:

    : получается тачка, которая должна раздавать инет с конфигами:

    auto eth0
    iface eth0 inet static
    address 192.168.1.200
    netmask 255.255.255.0
    gateway 192.168.1.1
    dns-nameservers 8.8.8.8
    (это который с натом)

    auto eth1
    iface eth1 inet static
    address 10.0.1.101
    netmask 255.255.255.0
    gateway 10.0.1.101
    (это сетка)

    а у остальных машин:
    auto eth0
    iface eth0 inet static
    address 10.0.1.102-104
    netmask 255.255.255.0
    gateway 10.0.1.101

    все 3 тачки видят первую, только инет естессна не получают от нее, хоть она и гейтвэй для них. как настроить?

  22. Losgreen:

    : то есть route add default gw 10.0.1.101 [интерфейса]

  23. Losgreen:

    : кури про форвардинг и маскарадинг

  24. Losgreen:

    ещё неплохо вырубить dhcp сервак виртуалбокса, и вместо него на раздающей тачке настроить dnsmasq

  25. R0bPhone:

    : да мне надо то проверить одну прогу (шейпинг траффика) и грохнуть все это дерьмо, обойдусь dhcp виртуалбокса, пох

  26. Losgreen:

    : шейпинг? oh my!

  27. R0bPhone:

    : я боюсь, что если я с этим не справился сам, то шейпинг я вообще разъебусь делать

  28. Tcumo:

    : ты хочешь что бы первая машина брала инет с хоста (вин7) или с отдельной сетевой?
    Если с хоста, то у первой машины 2 виртуальные сетевыху, 1 в режиме nat, 2ой адаптер в режиме «внутренняя сеть» и имя например Mega_lan. на всех остальных вирт машинах — только 1 сетевая в режиме «внутренняя сеть» и имя точно такое же как на первой машине. Если ты хочешь что бы с отдельной сетевухи — то я хз, скорей всего подойдет (но надо пробовать) на первом адаптаре первой машины выбирать сетевой мост, имя — имя реальной карты на которую заведен инет, при этом на хосте «Для virtualbox можно попробовать отключить все сервисы в настройках сетевой платы кроме virtualbox bridge driver.» (отсюда).

    Теперь настройка убунты:
    sudo echo 1 > /proc/sys/net/ipv4/ip_forward
    iptables -A POSTROUTING -j MASQUERADE
    DHCP и DNS по вкусу. Команды набраны руками и на корректность не проверялись. Да прибудет с тобой гугол.

  29. R0bPhone:

    ну впринципе то оно так, только вот у меня где инет 192.168.x.x, а сеть в 10.0.x.x, это не может конфликтовать?

  30. R0bPhone:

    : я сделал все именно так, только инет не раздается на побочные машины.
    с машин 10.0.1.102-104 спокойно пингуются 10.0.1.101 и 192.168.1.200, только внешние ресурсы не пингуются.
    какой dns должен быть прописан на побочных? я пробовал 8.8.8.8 (google) и пробовал 10.0.1.101, только на 10.0.1.101 нет dns сервера никакого, может нужно dns сервер настроить? я никогда этого не делал

  31. R0bPhone:

    : осталось чуть-чуть, up

  32. Tcumo:

    : c 10,0,1,101 инет пингуется? если да — настраивай нат, ставь DHCP и вперед.

  33. Tcumo:

    : DNS конечно же, вроде как dnsmasq с настройками по умолчанию работает как DNS ресолвер. Хотя могу ошибаться.

  34. R0bPhone:

    : пингуется, потому что там вторая сетевуха в нат, dhcp тоже есть, virtualbox’овский

  35. Tcumo:

    : тык. теперь делай нат на 10.0.1.101
    sudo echo 1 > /proc/sys/net/ipv4/ip_forward
    sudo iptables –A POSTROUTING –j MASQUERADE

    и с 10.0.1.102
    ping 8.8.8.8 и говори результат.

  36. R0bPhone:

    СПАСИБО, СПАСИБО! Все заработало, как же охуенно-то. Всем плюсики в карму)

Добавить комментарий