Difference between revisions of "PPP in container"
m (→Caveat: No longer experimental, no longer requires patched vzctl, added 2.6.32 kernel reference) |
(→Caveat) |
||
Line 5: | Line 5: | ||
It is necessary to run one of these 3 kernels : | It is necessary to run one of these 3 kernels : | ||
− | * [[Download/kernel/ | + | * [[Download/kernel/rhel6|rhel6]] |
* [[Download/kernel/2.6.27|2.6.27]] briullov.1 or later | * [[Download/kernel/2.6.27|2.6.27]] briullov.1 or later | ||
* [[Download/kernel/rhel5|rhel5]] 064.4 or later | * [[Download/kernel/rhel5|rhel5]] 064.4 or later |
Revision as of 17:49, 27 October 2012
Our goal is to start the pppd daemon in a virtual machine. Then it is possible, for example, to connect to your DSL provider in a VM.
Caveat
It is necessary to run one of these 3 kernels :
Howto
- ppp modules need to be loaded in the HN :
HN # modprobe ppp_async HN # modprobe ppp_deflate HN # modprobe ppp_mppe HN # lsmod | grep ppp ppp_mppe 6420 2 ppp_deflate 9793 2 zlib_deflate 21977 1 ppp_deflate ppp_async 15169 1 crc_ccitt 6337 1 ppp_async ppp_generic 30165 6 ppp_deflate,ppp_async slhc 10561 1 ppp_generic
- set "ppp" feature for stoppped VE:
HN # vzctl set [VEnumber] --features ppp:on --save
- start VE :
HN # vzctl start [VEnumber]
- Prepare /dev/ppp within VE:
HN # vzctl set [VEnumber] --devices c:108:0:rw --save HN # vzctl exec [VEnumber] mknod /dev/ppp c 108 0 HN # vzctl exec [VEnumber] chmod 600 /dev/ppp
- See if it works (as root):
VE# /usr/sbin/pppd
You should see gibberish in the standard output like
~�}#�!}!}!} }4}"}&} } } } }%}&)Q�}4}'}"}(}"p})
If there is an error message instead, something went wrong.
- From that point, you can finish your setup as in a real hardware environment.
See also
- A complete test case for ppp virtualization : one VM as a client, one VM as a server. http://268.bugzilla.openvz.org/attachment.cgi?id=512
- The feature request and discussion in bugzilla : http://bugzilla.openvz.org/show_bug.cgi?id=268