Спасибо за внимание к данной теме.
Как я уже писал ранее на ядре 2.6.18 все работает
написал программку, что-то вроде xotd: с одной стороны слушающий socket, который обрабатывает RFC1006 на порту в моем случае 5084, приняв вызов, создает соединение через X25socket. В ядре x25 адрес направлен на x25tap0, а в xotd x25tap0 связывается с удаленным адресом cisco с xotd
modprobe x25
modprobe x25tap
ifconfig x25tap0 up
route add -A x25 (x25 адрес) x25tap0
xotd -v x25tap0 192.168.100.11 <- cisco
rfc1006 -l 5084 (x25 адрес) <- собственный x25 адрес зашит внутри программки
Это все заработало, но хочется улучшить перейти на ядро 3.10Достиг результатов в понимании lapbether
Это такая штука, которая создает пару lapb и eth,причем однозначную, скажем в системе две карты eth0 и eth1. После
modprobe x25
modprobe lapb
modprobe lapbether
получается два устройства lapb, которые однозначно связываются с устройствами Ethernet
lapb0 <-> eth0
lapb1 <-> eth1
В общем случае, если в системе N eternet карт (кроме dummy, loop ...?) то будет N lapb однозначно связанных пар
lapbN <-> ethN
Провел эксперимент
две машины eth1 обоих связал в отдельном valn
ifconfig lapb1 up
на стороне клиента
route add -A x25 44 lapb1
x25client 33 44 <- программа устанавливает соединение с сервером по адресу 44 с использованием x25 socket
socket(PF_X25...
bind -> 33
connect -> 44
на стороне сервера
x25server 44
socket(PF_X25...
bind -> 44
listen
accept
в отдельном vlan, там где eth1, виден трафик (tcpdump) пакеты lapb, x25
устройства lapb общаются друг с другом
но на сервере accept не происходит: lapb1 сервера надо как-то связать со слушающим x25 socket ????
вот он socket, но dev ???
cat /proc/net/x25/socket
dest_addr src_addr dev lci st vs vr va t t2 t21 t22 t23 Snd-Q Rcv-Q inode
* 44 ??? 000 0 0 0 0 0 3 200 180 180 0 0 31582
просто уже задело
Спасибо еще раз за внимание, просто когда сам в себе варишься... А тут написал пост, оно и немного прояснилось, по крайней мере направление.
А как в ядре 3.10 выглядит этот ethertap ? я нашел упоминание о tun/tap устройствах в исходнике ядра drivers/net/tun.c Если это оно буду разбираться, если нет посоветуйте куда смотреть.
С уважением, Павел