研究目的のために、新しいLinuxシステムとVirtualBoxで実行されている既存のxenixシステムの間にスライドシリアルTCP接続を確立したいと思います。 2つのシリアルポートを持つxenix仮想マシンを設定しました。 1つは/ dev / ttyS0(ホストパイプ)にあり、もう1つは/ tmp / xenixserial(ファイルパイプ)にあり、minicomを使用してテストした2番目のポートは正常です。 Linuxでは私はそうだった
echo 1 > /proc/sys/net/ipv4/ip_forward
slattach -s 9600 -d -p slip /dev/ttyS0
ifconfig sl0 192.168.7.1 dstaddr 192.168.7.2 netmask 255.255.255.252 mtu 576 up
iptables -t nat -A POSTROUTING -s 192.168.7.0/24 -j MASQUERADE
ジェニックスではそうでした。
mkdev slip: only ask for relink kernel,of course answered yes
mkdev tcp: and set 192.168.7.2 as local 192.168.7.1 as remote and tty1a 9600 for serial
再起動すると、すべての作品を見ることができます
sl0: flags=51<UP,POINTOPOINT,RUNNING>
inet 192.168.7.2 --> 192.168.7.1 netmask ffffff00
ただし、ホストからゲストへ、ゲストからホストへのpingはありません。ルートを追加してみました。
route add default 192.168.7.1 1
しかし、何もありません。提案?ありがとう
ベストアンサー1
解決策が見つかりました。 TTYS0は、既存の物理シリアル(マイマザーボードで有効)を指すドライバ/モジュールです。これらの設定を使用するには、ptyドライバ(pts / 0、1、2など)を使用する必要がありますが、virtualboxはそれをサポートせず、qemuはそれをサポートします。興味がある場合、手順は次のとおりです。
Qemuホストで
#run qemu,256m ram disk not over 512M,pc-bios important otherwise give error
#control wich pts is running qemu,you will must use later
qemu-system-i386 -serial pty -hda Xenix.disk -boot c -fda floppy.img -no-fd-bootchk -m 256 -L pc-bios
#ip_forward
echo 1 1>/proc/sys/net/ipv4/ip_forward
#slattach
slattach -s 19200 -d -p slip /dev/pts/4 #pts/4 is used by qemu
#192.168.7.1 is on host,192.168.7.2 is guest
ifconfig sl0 192.168.7.1 dstaddr 192.168.7.2 netmask 255.255.255.252 mtu 576 up
#enable routing iptables
iptables -t nat -A POSTROUTING -s 192.168.7.0/30 -j MASQUERADE
ジェニックスから
mkdev slip #answer yes to all
reboot
mkdev tcp #set 19200 serial speed and 192.168.7.2 ip,and correct netmask