ftp.nice.ch/pub/next/unix/communication/ps_if.NIHS.bs.tar.gz#/ps_if

LoadCommands
 
Makefile
 
README.EUC
 
README.English
 
README.post.jis
 
UnloadCommands
 
if_ps.c
[View if_ps.c] 
if_ps.h
[View if_ps.h] 
mach/
 
ps_load-dist
 
ps_reloc
 
ps_unload
 

README.EUC

NCSA httpdやapacheのVertialHostのオプションがNEXTSTEPでは使用できない
とお嘆きのあなたへ!

無理�ö理NEXTSTEPに別のIPアドレスを振ってしまうためのDevice Driverを作
成しました。

まず、このディレクトリで

# make install

を行ないます。

そうすると

/usr/local/etc/ps/ps_reloc
/usr/local/etc/ps/ps_load
/usr/local/etc/ps/ps_unload

が作成されます。
/usr/local/etc/ps/ps_relocはDeive driverのファイル、
/usr/local/etc/ps/ps_loadはdriverのloadとIPアドレスの割り振りを行なう
script、/usr/local/etc/ps/ps_unloadはdriverのunloadを行なうscriptです。

いかにps_load、ps_unloadの使用方法を述べます。

[名前]
	ps_load

[形式]
	/usr/local/etc/ps/ps_load [ethernet address] [ip address] .....


[使用方法]
	第一引数にEthernet addressを書きます。これは自分のethernetアド
	レスです。これは/usr/adm/messagesの起動時に
	
	Feb 29 04:15:21 antares mach: en0: Ethernet address 

	とある行のXX:XX:XX:XX:XX:XXアドレスです。また、LAN内にマシンが
	ある時にLAN内の他のマシンにrloginして
	
	# /usr/etc/arp -a

	のメッセージのなかでも捜し出すことができます。

	第二引数以降は割り振るIPアドレスです。仮想的に付けたマシン名で
	も良いです。

	IPアドレスはコンパイル時に指定したインタフェースの数まで指定で
	きます。

	IPアドレスはethernet addressで指定したネットワークインタフェー
	スにと同じnetworkの中の値を指定して下さい。

	そうでない場合にはdefault routerにrouting tableを書き込んで
	routingするようにして下さい。

[名前]
	ps_unload

[形式]
	/usr/local/etc/ps/ps_unload 


[使用方法]

	ロードした仮想インタフェースドライバをアンロードします。


参考
apacheでの仮想ホストの使用方法。

httpd.confでコメントにされているBindAddressを生かします。

BindAddress	*

その上で
<VirtualHost hoge.foo.bar>
ServerAdmin webmaster@hoge.foo.bar
DocumentRoot /www/apache_1.0.5/hoge.doc
ServerName hoge.fuu.bar
ErrorLog hoge.logs/error_log
TransferLog hoge.logs/access_log
</VirtualHost>
など(hoge.foo.barは割り付けたアドレスのうちの一つ)とすると、指定したア
ドレスに接続されたドキュメント等はそれで指定したものになります。

(<VirtualHost></VirtualHost>の間はaccess.conf、srm.confに記述する
Directiveがなんでも記述することができます。)

README.English

README.English for ps_if: loadable kernel driver for multiple virtual IP hosting

This is a NeXT Mach loadable device driver for virtual hosting multiple IP
addresses on a single NEXTSTEP host.

The driver allows you to use Web server software such as NCSA httpd 1.5
(and later), and Apache httpd with the virtual hosting enabled.

The author is manmos@stellar.co.jp (Hideo "Sir MaNMOS" Morishita),
Stellar Craft Inc., Osaka, Japan.

The source and binary have been posted in fj.sources.
Here's the posting data for the article:

Newsgroups: fj.sources
From: manmos@stellar.co.jp (Hideo "Sir MaNMOS" Morishita)
Subject: Pseudo network interface driver(1/1)
Supersede: <MANMOS.96Jun25170440@antares.stellar.co.jp>
Message-ID: <MANMOS.96Jun25174855@antares.stellar.co.jp>
Organization: Stellar Craft Inc., Osaka, Japan
Distribution: fj
Date: Tue, 25 Jun 1996 08:48:55 GMT
Lines: 428


This is a rough English translation by an anonymous translator.

---

If you've been wondering why NEXTSTEP does not support virtual IP hosting
(multi-homing) with NCSA or Apache httpd, your wait is over!

I have written a loadable device driver that assigns additional IP addresses
to a NEXTSTEP host.

First, do in this directory,

# make install

This creates the following three files:

/usr/local/etc/ps/ps_reloc
/usr/local/etc/ps/ps_load
/usr/local/etc/ps/ps_unload

[If User-only environent does not have make, precompiled binary and scripts
may be copied to respective files as shown above as user root.
You must execute the scripts as root, or the scripts must have the mode 755,
which makes them SUID root.]

/usr/local/etc/ps/ps_reloc is the device driver binary.
/usr/local/etc/ps/ps_load is a script that loads the driver and assigns IP addresses.
/usr/local/etc/ps/ps_unload is a script that unloads the driver.

Usages for ps_load, and ps_unload are described below

-----
NAME
	ps_load

SYNOPSIS
	/usr/local/etc/ps/ps_load [ethernet address] [ip address] .....

DESCRIPTION
	The first argument is the Ethernet address of the (real) host.
	The Ethernet address may be found in /usr/adm/messages immediately
	after the machine is booted.  It is on a line which looks like:

	Feb 29 04:15:21 antares mach: en0: Ethernet address 

	The portion in the format XX:XX:XX:XX:XX:XX is the Ethernet address.
	Alternatively, you can find it from another machine on the same LAN by
	doing (after rlogin to another host):

	# /usr/etc/arp -a

	The second and (optional) additional arguments are virtual IP addresses
	to be assigned.  These may be virtual hostnames (DNS registered).
	Any number of virtual IP addresses may be assigned up to a limit that is
	compiled in.  As distributed, the limit is two, which may be increased
	by modifying DEVICE_NUM= in Makefile.

	Specify IP addresses that belong to the same subnet as that of the real host.

	If this is not the case, routing information must be entered into the
	routing table of the default router.


-----
NAME
	ps_unload
SYNOPSIS
	/usr/local/etc/ps/ps_unload
DESCRIPTION
	This unloads the virtual interface driver that has been loaded previously.


-----
Note
Virtual Host usage with Apache httpd

Uncomment and enable "BindAddress" line that is commented out in httpd.conf.

BindAddress	*

Then,

<VirtualHost hoge.foo.bar>
ServerAdmin webmaster@hoge.foo.bar
DocumentRoot /www/apache_1.0.5/hoge.doc
ServerName hoge.fuu.bar
ErrorLog hoge.logs/error_log
TransferLog hoge.logs/access_log
</VirtualHost>

In the above example, "hoge.foo.bar" is one of the virtual addresses assigned.
It is also possible to list, between <VirtualHost> and </VirtualHost>, any
directives that are allowd in access.conf and srm.conf.



README.post.jis

Newsgroups: fj.sys.next,fj.sources
From: manmos@stellar.co.jp (Hideo "Sir MaNMOS" Morishita)
Subject: Pseudo network interface driver(0/1)
Message-ID: <MANMOS.96Jun25170337@antares.stellar.co.jp>
Followup-To: fj.sys.next
Sender: usenet@stellar.co.jp
Nntp-Posting-Host: antares
Organization: Stellar Craft Inc., Osaka, Japan
Distribution: fj
Date: Tue, 25 Jun 1996 08:03:37 GMT
Lines: 115


$B?92<(B $B$*Be41MM(B $B#M#a#N#M#O#S$G$9!#(B

$B!t(BFollowup-To: fj.sys.next$B$G$9!#(B

$B:G6a$N(BUNIX$B$G$O(Bnetwork interface$B$KJ#?t$N%"%I%l%9$r9_$k$3$H$N$G$-$k(BUNIX
$B$,B?$$$N$G$9$,!";DG0$J$,$i(BNEXTSTEP$B$G$O$G$-$J$$$h$&$G$9!#(B(device driver
level$B$G$O$=$&8+$($^$9!#(B)

$B$=$N$?$a$K(BNCSA httpd 1.5$B0J>e$d(Bapache$B$G;HMQ$G$-$k(BVirtualHost$B$rMxMQ$G$-(B
$B$^$;$s$G$7$?!#(B

$B$G$b!"$=$l$G$O2y$7$$$N$G(Baddress$B$r3d$j?6$k$?$a$@$1$K(Bdevice driver$B$r=q$$(B
$B$F$_$^$7$?!#(B

$B$3$l$r;H$C$F(BVirtualHost$B$r3Z$7$s$G2<$5$$!#(B

$B0J2<$K(BREADME.EUC$B$r:\$;$^$9!#(B
(fj.sys.next$B$r8+$F$$$kJ}!"K\BN$O(Bfj.sources$B$K$"$j$^$9!#(B)

------
NCSA httpd$B$d(Bapache$B$N(BVertialHost$B$N%*%W%7%g%s$,(BNEXTSTEP$B$G$O;HMQ$G$-$J$$(B
$B$H$*C2$-$N$"$J$?$X!*(B

$BL5M}LpM}(BNEXTSTEP$B$KJL$N(BIP$B%"%I%l%9$r?6$C$F$7$^$&$?$a$N(BDevice Driver$B$r:n(B
$B@.$7$^$7$?!#(B

$B$^$:!"$3$N%G%#%l%/%H%j$G(B

# make install

$B$r9T$J$$$^$9!#(B

$B$=$&$9$k$H(B

/usr/local/etc/ps/ps_reloc
/usr/local/etc/ps/ps_load
/usr/local/etc/ps/ps_unload

$B$,:n@.$5$l$^$9!#(B
/usr/local/etc/ps/ps_reloc$B$O(BDeive driver$B$N%U%!%$%k!"(B
/usr/local/etc/ps/ps_load$B$O(Bdriver$B$N(Bload$B$H(BIP$B%"%I%l%9$N3d$j?6$j$r9T$J$&(B
script$B!"(B/usr/local/etc/ps/ps_unload$B$O(Bdriver$B$N(Bunload$B$r9T$J$&(Bscript$B$G$9!#(B

$B$$$+$K(Bps_load$B!"(Bps_unload$B$N;HMQJ}K!$r=R$Y$^$9!#(B

[$BL>A0(B]
	ps_load

[$B7A<0(B]
	/usr/local/etc/ps/ps_load [ethernet address] [ip address] .....


[$B;HMQJ}K!(B]
	$BBh0l0z?t$K(BEthernet address$B$r=q$-$^$9!#$3$l$O<+J,$N(Bethernet$B%"%I(B
	$B%l%9$G$9!#$3$l$O(B/usr/adm/messages$B$N5/F0;~$K(B
	
	Feb 29 04:15:21 antares mach: en0: Ethernet address 

	$B$H$"$k9T$N(BXX:XX:XX:XX:XX:XX$B%"%I%l%9$G$9!#$^$?!"(BLAN$BFb$K%^%7%s$,(B
	$B$"$k;~$K(BLAN$BFb$NB>$N%^%7%s$K(Brlogin$B$7$F(B
	
	# /usr/etc/arp -a

	$B$N%a%C%;!<%8$N$J$+$G$bA\$7=P$9$3$H$,$G$-$^$9!#(B

	$BBhFs0z?t0J9_$O3d$j?6$k(BIP$B%"%I%l%9$G$9!#2>A[E*$KIU$1$?%^%7%sL>$G(B
	$B$bNI$$$G$9!#(B

	IP$B%"%I%l%9$O%3%s%Q%$%k;~$K;XDj$7$?%$%s%?%U%'!<%9$N?t$^$G;XDj$G(B
	$B$-$^$9!#(B

	IP$B%"%I%l%9$O(Bethernet address$B$G;XDj$7$?%M%C%H%o!<%/%$%s%?%U%'!<(B
	$B%9$K$HF1$8(Bnetwork$B$NCf$NCM$r;XDj$7$F2<$5$$!#(B

	$B$=$&$G$J$$>l9g$K$O(Bdefault router$B$K(Brouting table$B$r=q$-9~$s$G(B
	routing$B$9$k$h$&$K$7$F2<$5$$!#(B

[$BL>A0(B]
	ps_unload

[$B7A<0(B]
	/usr/local/etc/ps/ps_unload 


[$B;HMQJ}K!(B]

	$B%m!<%I$7$?2>A[%$%s%?%U%'!<%9%I%i%$%P$r%"%s%m!<%I$7$^$9!#(B


$B;29M(B
apache$B$G$N2>A[%[%9%H$N;HMQJ}K!!#(B

httpd.conf$B$G%3%a%s%H$K$5$l$F$$$k(BBindAddress$B$r@8$+$7$^$9!#(B

BindAddress	*

$B$=$N>e$G(B
<VirtualHost hoge.foo.bar>
ServerAdmin webmaster@hoge.foo.bar
DocumentRoot /www/apache_1.0.5/hoge.doc
ServerName hoge.fuu.bar
ErrorLog hoge.logs/error_log
TransferLog hoge.logs/access_log
</VirtualHost>
$B$J$I(B(hoge.foo.bar$B$O3d$jIU$1$?%"%I%l%9$N$&$A$N0l$D(B)$B$H$9$k$H!";XDj$7$?%"(B
$B%I%l%9$K@\B3$5$l$?%I%-%e%a%s%HEy$O$=$l$G;XDj$7$?$b$N$K$J$j$^$9!#(B

(<VirtualHost></VirtualHost>$B$N4V$O(Baccess.conf$B!"(Bsrm.conf$B$K5-=R$9$k(B
Directive$B$,$J$s$G$b5-=R$9$k$3$H$,$G$-$^$9!#(B)

--
   ___     $B$o$7$O!";3?a?'$N$+$9$F!<$i$,Bg9%$-$G$N$%(B
 [[o o]]            $B$U$)$C$U$)$C$U$)(B
   'J'     $B?92<(B $B$*Be41MM(B $B#M#a#N#M#O#S(B $B1QIW!w%9%F%i%/%i%U%H(B

=========================================================
Newsgroups: fj.sources
From: manmos@stellar.co.jp (Hideo "Sir MaNMOS" Morishita)
Subject: Pseudo network interface driver(1/1)
Supersede: <MANMOS.96Jun25170440@antares.stellar.co.jp>
Message-ID: <MANMOS.96Jun25174855@antares.stellar.co.jp>
Sender: usenet@stellar.co.jp
Nntp-Posting-Host: antares
Organization: Stellar Craft Inc., Osaka, Japan
Distribution: fj
Date: Tue, 25 Jun 1996 08:48:55 GMT
Lines: 428


$B?92<(B $B$*Be41MM(B $B#M#a#N#M#O#S$G$9!#(B
$B$"$"!"4V0c$($?!#(B

-----

These are the contents of the former NiCE NeXT User Group NeXTSTEP/OpenStep software archive, currently hosted by Netfuture.ch.