Re: Some problems with changing source ip.

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Thanks Sarada,

The problem in user space is i cannot get a new port
as for every connection. If i get say 65000 requests
and i have 10 real servers behind i cannot create more
than 1024 sockets per application. Also my
specification is that each real server will expect a
unique 5 tuple src ip, src port, dst ip, dst port,
protocol. So we have to tinker with the kernel code.

Is there any way to get new ports from the application
layer ?

Thanks
Arun.


--- Sarada Seshadri <sarada@ece.iisc.ernet.in> wrote:
> > I am new to Linux networking code and am trying
> out
> > something new for my project. 
> > I'm basically trying to build a port based Load
> > Balancer box. In short i maintain a table of ports
> and
> > then forward whatever request i get to a server
> whose
> > ip i know. But the problem is that i am unable to
> > forward a packet with the source ip as the address
> of
> > this machine. I have added code in ip_input.c to
> do
> > this and do a ip_route_input after doing a
> > dst_release. It is able to forward the packet if
> the
> > source address is not changed. ( ip_forwarding is
> > enabled and i have also run echo 1 >
> > /proc/sys/net/ipv4/ip_forward). IP firewalling is
> also
> > enable.
> > However when i assign the source address as this
> > machine it is not able to forward the packet.
> 
> I would suggest that you work in user space rather
> than 
> tinkering with the kernel code. This would also
> provide
> scope for novel features in your load balancer.
> 
> -Sarada
> 


__________________________________________________
Do You Yahoo!?
Yahoo! Auctions - buy the things you want at great prices
http://auctions.yahoo.com/
-
: send the line "unsubscribe linux-net" in
the body of a message to majordomo@vger.kernel.org


[Index of Archives]     [Netdev]     [Ethernet Bridging]     [Linux 802.1Q VLAN]     [Linux Wireless]     [Kernel Newbies]     [Security]     [Linux for Hams]     [Netfilter]     [Git]     [Bugtraq]     [Yosemite News and Information]     [MIPS Linux]     [ARM Linux]     [Linux RAID]     [Linux PCI]     [Linux Admin]     [Samba]

  Powered by Linux