日本語はこちら
- sl_relay is a Packet Relay Server for Second Life running on Linux. It is aimed at connecting to Second Life Servers from a PC through a firewall such as might be found in a university.
- sl_relay relays communication (UDP,HTTP/HTTPS) between the SIM Server and the Second Life viewer.
- Note: it not only relays but also scans inside each packet. Thus when the content of a packet (URL, IP address and port number) indicate another SIM is involved, a new relay process for that SIM can be started.
- sl_cache can be used with sl_relay to provide a texture data cache.
- When caching UDP packets (sl_cache), the sequence number of each UDP packet is rewritten to prevent contradictions.
- It is also possible to limit access to particular SIMs by using sl_relay with the Information Server (sl_info).
- sl_relay is part of sl_proxy.
- The current version is 1.10.1 (4 Oct. '11)
Outline of Functions.†[edit]
- You can execute Second Life from a PC with private IP address behind a firewall.
- You can specifiy the port number for firewall access.
- Access to sl_relay can be controlled.
- Full HTTPS access between Viewer and Relay Server is possible. (default is HTTP)
- MusicURL and MediaURL(High 23) is supported. However, it is recommended that a Web proxy be used.
- External Web Proxy (e.g. squid) connection is supported. Moreover, an internal Web Proxy function is included.
- OpenSim is supported. (Test version)
- sl_cache connection is supported. (sl_cache is the texture cache server for sl_relay.)
- When sl_cache is down or response is too slow, sl_relay automatically disconnects from the cache server after short delay.
- Access to Second Life SIMs can be controlled, by Avatar, viewer machine IP or at the global SIM level through the use of white lists with sl_info.
Annoyances or Bugs.†[edit]
- You might see the same message two or more times in IM or chat. The cause is unknown, sorry.
- A stress test of sl_relay has not been carried out.
Explanation†[edit]
- Over the Firewall
- Cooperation with the Cache Server
- Cooperation with the Information Server
- Communication by HTTPS
- Web Proxy Function
- When the server has two or more network interfaces
- Rewrite Viewer Version
- Log and Debug Mode
- Security
- Get Grid Information
Configuration†[edit]
- The default configuration file is /usr/local/etc/sl_proxy/sl_relay.conf.
- It is also possible to specify an alternate configuration file using the -f option of sl_relay.
- Because the configuration file is read before sl_relay does the switch to the effective user, exec user should be able to be read.
- The setting of each item is described in the configuration file. Empty lines or lines starting with # are not read.
Communication port with SIM Server†[edit]
Communication port with Viewer†[edit]
Control port of Relay Controller†[edit]
HTTPS(SSL)†[edit]
Access control†[edit]
Etc. etc.†[edit]
Execute Options†[edit]
sl_relay [-s server_name[:port]] [-p port] [-f config_file] [-u user_name]
[-i interface_address]
[-pid pid_file] [-l [log_file]] [-v syslog_level]
[-cs [cache_server:port]] [-cg] [-cp]
[-is [info_server:port]] [-wf]
[-vs [voice_relay_server:port]]
[-as] [-aca] [-ano]
[-xp [web_proxy_server:porti]] [-ip [port]] [-ipx [port]] [-mm]
[-ver version]
[-d] [-x] [-xt] [-xu] [-xuf]
[--version] [--help] [-h]
-s : specify login server of Second Life. default is login.agni.lindenlab.com:443
-p : port number that Viewer connects. default is 8100.
-f : configuration file. default is /usr/local/etc/sl_proxy/sl_relay.conf
-u : specify effective user.
-i : specify Viewer side network interface IP address.
if your server has two or more network interfaces,
you need to use this option.
-pid : specify pid file.
-l : specify log file. default is /var/sl_proxy/sl_relay.log
-v : level of syslog. default is LOG_INFO (7).
-cs : specify sl_cache cache server. default is localhost:8200
-cg : only get cache data. do not save data.
-cp : only save cache data. do not get data.
-is : specify sl_info infomation server. default is localhost:8086
-wf : The access limitation to SIM by the white list is done in cooperation with sl_info.
-vs : specify sl_voice_relay server. default is localhost:8088
-as : use HTTPS between Viewer and Relay Server.
-aca : confirms Second Life Server by using C:\Program Files\SecondLife\app_settings\CA.pem
-ano : no HTTPS communication. Do not use, usually. It is for OpenSim olny. (Experimental option)
-xp : specify external web proxy server.
-ip : use internal web proxy function with full access mode.
excute internal web proxy process. port number can be specified.
-ipx : use internal web proxy function with restricted mode.
excute internal web proxy process. port number can be specified.
-mm : relay MusicURL and MediaURL(High 23). If it is possible, to use web proxy function of viewer.
-ver : rewrite Viewer version.
Please use this temporarily only when you cannot immediately install new Viewer.
It is dangerous to use this lasting long, and never do it!!
-d : debug mode. display debug information
-x : TCP(HTTP/HTTPS) packets are saved at working directory and UDP packet headers are printed.
-xt : TCP(HTTP/HTTPS) packets are saved at working directory.
-xu : UDP packet headers are printed.
-xuf : UDP packet is full dumped.
--version : display Version information.
--help, -h : display this Help messages.
Processes†[edit]
Relationship between Processes†[edit]
Transformation of UDP and HTTP/HTTPS Packets†[edit]
- [Proxy Process] is Relay Process
- [Control Process] is Relay Controller