IPv4/IPv6 TCP Server

Menu

https://gitlab.ie.u-ryukyu.ac.jp/teacher/kono/getaddr.git を動かしてみる。


getaddr

getaddr.pl (または、それに相当するAPI) を用いて、コンピュータが使用可能なアドレスをすべて取得するプログラムを作成せよ。

その結果を、ifconfig の出力と比較せよ。


Server and client

    perl server.pl  
    perl client.pl  nirai.ie.u-ryukyu.ac.jp

の用に使用すると、server.pl 側では、

    server6.pl 4402: connection from nwxx15.st.ie.u-ryukyu.ac.jp [ 133.13.xx.xxx ]
		 at port 60499 at Tue Jan 13 14:39:53 2009
    from nwxx15.st.ie.u-ryukyu.ac.jp: Message

のように表示される。

ip a または ifconfig en0/en1/eth0 で、IPv4, IPv6 アドレスを確認して、どのアドレスで接続可能かを調べてみる。自分のPCに正しく、IPv6 アドレスは割り振られているだろうか?

IPv4 と IPv6 の両方で接続できることを確認せよ。

簡単なアクセスカウンター (何回アクセスしたかを数える) を付けて見よ。

変更前のプログラムと変更後のプログラムを git に登録し、repositoryを明示せよ。

他のマシン上、他のユーザのserverにリクエストを送ってどのように実行されるかを調べよ。


Option

このプログラムの go lang / Rust / Ruby / Python / Java / C 版を作ってみよう。

Perlのversionと相互に通信できることを確認せよ。message は UTF-8 で通信するようにプログラムせよ。


Shinji KONO / Fri Dec 20 14:32:44 2024