03-22-2004
All applications can talk through a firewall as the firewall is just a configurable piece of hardware or software that allows or disallows network communication based on a set of rules. The firewall is transparent to the application and the underlying socket routines used just as the many routers and switches in between the two machines are transparent. This is the nature of IP packet routing.
However, if what you are talking about is attempting to get your application's communication "through" the firewall you may want to research such things as SOCKS. Many applications can use these "proxy servers" to tunnel through a firewall by authenticating their communication through it. If this is what you want then google SOCKS and I'm sure you'll find out a lot more than can be explained here.
10 More Discussions You Might Find Interesting
1. HP-UX
Our system is having a server and multiple clients. We are monitoring the client FDs using select() system call in HP-UX.
After establishing connection-using socket with the remote client, before start sending the data we are checking the status of socket using select( ) call. For first 16... (0 Replies)
Discussion started by: AshokG
0 Replies
2. Programming
Can anyone help? I'm trying to write a program which will write to a socket. I can get the server to run, but always get an error when I try to connect.
It gives me an error at the "connect" command.
It's probably a simple error, but I can't seem to find it.
#include <sys/socket.h>... (6 Replies)
Discussion started by: Stevhp
6 Replies
3. UNIX for Advanced & Expert Users
I am not able to receive the message on socket in the current process when its waiting for its child to exit.
code looks something like below
//in one thread of the current process
//thread 1
===============================================
int numBytes = read(sockid,buf,SIZE); //Now the... (2 Replies)
Discussion started by: swap007
2 Replies
4. Programming
Dear All,
I've searched many topics and googled many web-pages, but still I didn't found solution to this problem.
I want to set timeout for connect(). The thing is, that my code works only on BSD, on Linux (tested on SuSE box) it freezes at connect() call :(
bool
SomeFunc(std::string... (1 Reply)
Discussion started by: sggkxv
1 Replies
5. UNIX for Advanced & Expert Users
Hi,
I was porting ipv4 application to ipv6; i was done with TCP transports. Now i am facing problem with SCTp transport at runtime.
To test SCTP transport I am using following server and client socket programs. Server program runs fine, but client program fails giving Invalid Arguments for... (0 Replies)
Discussion started by: chandrutiptur
0 Replies
6. Programming
I have a client /server file operation program.It works properly when i run the client and server program in the same system.but when i try to run the client in one system and server in another system i am getting an error in the cleint machine as "ERROR:Connection refused". Plz help me in this
... (1 Reply)
Discussion started by: vigneshinbox
1 Replies
7. Programming
I wrote a program which will send a message to multiple clients(i.e, broadcasting) that are connected to a server.Once when the client receives a message from the server ,the client should read a file in the server and display it in the client.The client which responds (i.e, client wants all the... (3 Replies)
Discussion started by: vigneshinbox
3 Replies
8. Programming
Hi,
My name is Daniel and I'm spanish, so I'm sorry if you can't undertand something becouse of my low-level english.
Something stranger is happening to me with socket++ library and I don't know how to work on it.
I has a library called commands.so and the sslclient is and object of that... (4 Replies)
Discussion started by: lock.cda
4 Replies
9. Post Here to Contact Site Administrators and Moderators
hi,
i am new to socket programming.i have a problem in server.requirement is it should continuosly read the requests from client(sends requests continuously) and after certain delay(i kept der sleep) should send response.
for this i used msgqueues so that after reading it is sending into... (1 Reply)
Discussion started by: chandinisree
1 Replies
10. IP Networking
Hi
My socket program is to communicate between the two systems connected with lan. Always i am getting an error saying bind value is -1 or not connected. ..If i run both the server and client programs in the same machine in two diff terminals they are working but they are not working between two... (3 Replies)
Discussion started by: Gurvareddy
3 Replies
LEARN ABOUT SUSE
net::config
Net::Config(3pm) Perl Programmers Reference Guide Net::Config(3pm)
NAME
Net::Config - Local configuration data for libnet
SYNOPSYS
use Net::Config qw(%NetConfig);
DESCRIPTION
"Net::Config" holds configuration data for the modules in the libnet distribution. During installation you will be asked for these values.
The configuration data is held globally in a file in the perl installation tree, but a user may override any of these values by providing
their own. This can be done by having a ".libnetrc" file in their home directory. This file should return a reference to a HASH containing
the keys described below. For example
# .libnetrc
{
nntp_hosts => [ "my_preferred_host" ],
ph_hosts => [ "my_ph_server" ],
}
__END__
METHODS
"Net::Config" defines the following methods. They are methods as they are invoked as class methods. This is because "Net::Config" inherits
from "Net::LocalCfg" so you can override these methods if you want.
requires_firewall HOST
Attempts to determine if a given host is outside your firewall. Possible return values are.
-1 Cannot lookup hostname
0 Host is inside firewall (or there is no ftp_firewall entry)
1 Host is outside the firewall
This is done by using hostname lookup and the "local_netmask" entry in the configuration data.
NetConfig VALUES
nntp_hosts
snpp_hosts
pop3_hosts
smtp_hosts
ph_hosts
daytime_hosts
time_hosts
Each is a reference to an array of hostnames (in order of preference), which should be used for the given protocol
inet_domain
Your internet domain name
ftp_firewall
If you have an FTP proxy firewall (NOT an HTTP or SOCKS firewall) then this value should be set to the firewall hostname. If your
firewall does not listen to port 21, then this value should be set to "hostname:port" (eg "hostname:99")
ftp_firewall_type
There are many different ftp firewall products available. But unfortunately there is no standard for how to traverse a firewall. The
list below shows the sequence of commands that Net::FTP will use
user Username for remote host
pass Password for remote host
fwuser Username for firewall
fwpass Password for firewall
remote.host The hostname of the remote ftp server
0 There is no firewall
1
USER user@remote.host
PASS pass
2
USER fwuser
PASS fwpass
USER user@remote.host
PASS pass
3
USER fwuser
PASS fwpass
SITE remote.site
USER user
PASS pass
4
USER fwuser
PASS fwpass
OPEN remote.site
USER user
PASS pass
5
USER user@fwuser@remote.site
PASS pass@fwpass
6
USER fwuser@remote.site
PASS fwpass
USER user
PASS pass
7
USER user@remote.host
PASS pass
AUTH fwuser
RESP fwpass
ftp_ext_passive
ftp_int_passive
FTP servers can work in passive or active mode. Active mode is when you want to transfer data you have to tell the server the address
and port to connect to. Passive mode is when the server provide the address and port and you establish the connection.
With some firewalls active mode does not work as the server cannot connect to your machine (because you are behind a firewall) and the
firewall does not re-write the command. In this case you should set "ftp_ext_passive" to a true value.
Some servers are configured to only work in passive mode. If you have one of these you can force "Net::FTP" to always transfer in
passive mode; when not going via a firewall, by setting "ftp_int_passive" to a true value.
local_netmask
A reference to a list of netmask strings in the form "134.99.4.0/24". These are used by the "requires_firewall" function to determine
if a given host is inside or outside your firewall.
The following entries are used during installation & testing on the libnet package
test_hosts
If true then "make test" may attempt to connect to hosts given in the configuration.
test_exists
If true then "Configure" will check each hostname given that it exists
perl v5.12.1 2010-07-01 Net::Config(3pm)