How to create a simple echo server in OS X. Assuming that you already have MacPorts installed (and if not, why not!), install xinetd as follows:
port install xinetd
Create the file
/Library/LaunchDaemons/org.macports.xinetd.plist
with the following contents:
Label
org.macports.xinetd
OnDemand
Program
/opt/local/sbin/xinetd
RunAtLoad
Edit
/etc/services
to include the line:
myecho 7745/tcp # mcarter's weird nonsense
Edit
/etc/xinetd.conf
to include:
service myecho
{
disable = no
socket_type = stream
wait = no
user = root
protocol = tcp
groups = yes
server = /Users/mcarter/docs/echoserv/echoserv
port = 7745
}
Adjust the value of
server
to wherever you create
echoserv
. Create the file
echoserv
:
#!/bin/bash
read
echo $REPLY
exit 0
Test it out:
telnet localhost 7745
hello world
It should print out
hello world
, and exit. Open port 7745 on your router, and you should be able to connect remotely.
1 comment:
sweet thx, this is just what I needed to run this tutorial:
http://docs.oracle.com/javase/tutorial/networking/sockets/readingWriting.html
For me I had to run xinetd with sudo for it to work.
Post a Comment