Subject: to bounce (redirect) tcp connections to another machine/port.
Solution: cd /usr/ports/net/bounce/ && make install distclean
Usage: bounce [-a localaddr | -b localaddr] [-p localport] machine port
This is the rc.d(8) script based on rc.subr(8) for bounce (you can safe it under the name /usr/local/etc/rc.d/bounce with rights to execute: chmod +x /usr/local/etc/rc.d/bounce):
#------- the start of the script -------
#!/bin/sh
# Author: Stepan A. Baranov (rosmir@gmail.com)
# web-site: www.rosmir.org
# PROVIDE: bounce
# REQUIRE: NETWORKING
# KEYWORD: nojail
. /etc/rc.subr
name="bounce"
rcvar=`set_rcvar`
start_cmd="bounce_start"
stop_cmd="bounce_stop"
init_variables() {
_b="$1"
if [ -z "$_b" ]; then
warn "init_variables: you must specify a bond"
return
fi
eval bounce_vars=\"\$bounce_${_b}_vars\"
}
bounce_start() {
for _bond in ${bounce_list}
do
echo $_bond
init_variables $_bond
/usr/local/sbin/bounce ${bounce_vars}
done
}
bounce_stop() {
killall bounce
}
load_rc_config $name
run_rc_command "$1"
#------- the end of the script -------
To enable the start of bounce you must add, for example, following lines to your /etc/rc.conf file like these:
bounce_enable="YES"
bounce_list="b1 b2"
bounce_b1_vars="-a localaddr -p localport1 machine1 port1"
bounce_b2_vars="-a localaddr -p localport2 machine2 port2"
|
©2009 Rosmir - Stepan A. Baranov
$Id: bounce.html 417 2009-01-07 16:41:34Z rosmir $
|