-1

I have 2 internet connections from 2 different ISPs with static IPs, lets call them A and B. A connects to the server in several ways (ping, SSH, HTTP), while B cannot do anything (ping, SSH, HTTP).

I ran tcpdump on the server using connection A, and then tried to call a webpage using B. It appears that B has reached the server, so that rules out that the problem is from ISP B.

I checked the iptables but there is nothing that bans B ip! I checked hosts.deny file as well but there is nothing in it too.

What might be the problem? Is there any more tests that would help in reaching to the problem source?

Please advice

wael34218
  • 321
  • 2
  • 5
  • 15
  • 1
    It's obviously a routing problem on the server, probably you have A's gateway set as the default (even for B). – NickW Mar 21 '13 at 15:48
  • 1
    Have you properly configured with the server with *two* routing tables (one for each ISP) and a policy rule to select between them based on the source IP? If not, it can't possibly work. – David Schwartz Mar 21 '13 at 15:49

2 Answers2

1

Show output of this commands:

ip link show
ip address show
ip route show

Probably, you have problems with routing. Did you configure multi-path routing? It does not work out-of-the-box

Selivanov Pavel
  • 2,206
  • 3
  • 26
  • 48
0

What I gather from your question: One server connects to two routers, each connecting to a different ISP. Since ISP A is working, I assume that router A is your default Gateway. If someone connects to your server using ISP/Router B, the return traffic will be sent through router A, since that is the route your server knows. A-symmetric routing like this can be the cause of this problem.

JelmerS
  • 777
  • 6
  • 12