J'ai besoin d'openvpn et le tun(7M) c'est pas vraiment ce que je pensais
etre un device tun... Alors apres avoir joue avec tun(7M) pour constater que
j'avais pas ce que je voulais, j'ai un peu cherche et voila vite fait un ptit
resume...
D'abord un "tutorial" etape par etape pour l'installation d'OpenVPN avec
OpenSolaris... bon ok faut un driver tuntap
"externe", mais bon...
Ensuite on rencontre des tites merdes genre :
# make install
ld -64 -r -o tun tun.o
ld -64 -r -o tap tap.o
/usr/bin/ginstall -c -m 644 -o root -g root if_tun.h /usr/include/net
/usr/bin/ginstall -c -m 644 -o root -g root tun /usr/kernel/drv/amd64
/usr/bin/ginstall -c -m 644 -o root -g root tap /usr/kernel/drv/amd64
/usr/bin/ginstall -c -m 644 -o root -g root tun.conf /usr/kernel/drv
/usr/bin/ginstall -c -m 644 -o root -g root tap.conf /usr/kernel/drv
/usr/sbin/rem_drv tun >/dev/null 2>&1
/usr/sbin/rem_drv tap >/dev/null 2>&1
/usr/sbin/add_drv tun
devfsadm: driver failed to attach: tun
Warning: Driver (tun) successfully added to system but failed to attach
/usr/sbin/add_drv tap
devfsadm: driver failed to attach: tap
Warning: Driver (tap) successfully added to system but failed to attach
et GnaGNAGnagnagnaGnaAGnA!!
Apr 22 00:16:45 deep genunix: [ID 370954 kern.notice] symbol tun_ppa:
Apr 22 00:16:45 deep genunix: [ID 780480 kern.notice] value 0xffffffffc0347950 does not fit
Apr 22 00:16:45 deep genunix: [ID 286029 kern.notice] relocation error: R_AMD64_32:
Apr 22 00:16:45 deep genunix: [ID 720415 kern.notice] file /usr/kernel/drv/amd64/tap:
Apr 22 00:16:45 deep genunix: [ID 370954 kern.notice] symbol tun_ppa:
Apr 22 00:16:45 deep genunix: [ID 780480 kern.notice] value 0xffffffffc0347950 does not fit
Apr 22 00:16:45 deep genunix: [ID 286029 kern.notice] relocation error: R_AMD64_32:
Apr 22 00:16:45 deep genunix: [ID 720415 kern.notice] file /usr/kernel/drv/amd64/tap:
Apr 22 00:16:45 deep genunix: [ID 370954 kern.notice] symbol tun_ppa:
Apr 22 00:16:45 deep genunix: [ID 780480 kern.notice] value 0xffffffffc0347950 does not fit
Apr 22 00:16:45 deep genunix: [ID 399259 kern.notice] do_relocations: /usr/kernel/drv/amd64/tap do_relocate failed
Apr 22 00:16:45 deep genunix: [ID 603676 kern.notice] tap error doing relocations
Apr 22 00:20:52 deep genunix: [ID 286029 kern.notice] relocation error: R_AMD64_32:
Apr 22 00:20:52 deep genunix: [ID 720415 kern.notice] file /platform/i86pc/kernel/drv/amd64/tun:
Apr 22 00:20:52 deep genunix: [ID 370954 kern.notice] symbol :
Apr 22 00:20:52 deep genunix: [ID 780480 kern.notice] value 0xfffffffff82ee590 does not fit
Apr 22 00:20:52 deep genunix: [ID 286029 kern.notice] relocation error: R_AMD64_32:
Apr 22 00:20:52 deep genunix: [ID 720415 kern.notice] file /platform/i86pc/kernel/drv/amd64/tun:
Apr 22 00:20:52 deep genunix: [ID 370954 kern.notice] symbol tun_ppa:
Bon hop hop on prends son cerveau, on tente de l'allumer (il est a peu pres
minuit...).. apres etre passe par la, puis
la...
j'ai finalement abouti ICI et la houra!
J'ai modifie qqes details dans le Makefile du driver Tun/Tap "externe" vite
fait... Makefile:
[...]
CC = cc
LD = ld
DEFS = -DPACKAGE_NAME=\"\" -DPACKAGE_TARNAME=\"\" -DPACKAGE_VERSION=\"\" -DPACKAGE_STRING=\"\" -DPACKAGE_BUGREPORT=\"\" -DTUN_VER=\"1.1\ 04/22/2009\"
CFLAGS = $(DEFS) -O2 -D_KERNEL -I. -m64 -xmodel=kernel
ADD_DRV = /usr/sbin/add_drv
REM_DRV = /usr/sbin/rem_drv
DRV_DIR = /usr/kernel/drv/amd64
DRV_CONF_DIR = /usr/kernel/drv
[...]
et on dit merci a -xmodel=kernel
..
au passage je suis tombe sur ces deux choses aussi..
Et c'est apres m'etre pris la tete 20 minutes ( alors que je suis une grosse
feignasse...) que je vois que qqun avait aussi resolu le 'blem ici
au final on finit par avoir:
Apr 22 00:37:52 deep tun: [ID 654686 kern.notice] Universal TUN/TAP device driver ver 1.1 04/22/2009 (C) 1999-2000 Maxim Krasnyansky
Apr 22 00:37:52 deep pcplusmp: [ID 805372 kern.info] pcplusmp: ide (ata) instance 1 irq 0xf vector 0x44 ioapic 0x8 intin 0xf is bound to cpu 1
Apr 22 00:37:52 deep pseudo: [ID 129642 kern.info] pseudo-device: tun0
Apr 22 00:37:52 deep genunix: [ID 936769 kern.info] tun0 is /pseudo/tun@0
Apr 22 00:37:53 deep tap: [ID 654686 kern.notice] Universal TUN/TAP device driver ver 1.1 04/22/2009 (C) 1999-2000 Maxim Krasnyansky
Apr 22 00:37:53 deep pcplusmp: [ID 805372 kern.info] pcplusmp: ide (ata) instance 1 irq 0xf vector 0x44 ioapic 0x8 intin 0xf is bound to cpu 0
Apr 22 00:37:53 deep pseudo: [ID 129642 kern.info] pseudo-device: tap0
Apr 22 00:37:53 deep genunix: [ID 936769 kern.info] tap0 is /pseudo/tap@0
youpi.
NB: j'utilise le compilo sun.