6.9 C
New York
Thursday, November 28, 2024

routing – Why does a router must have an IP assigned to have the ability to deal with Proxy ARP?


That is mainly a comply with up query of this one. I’ve had many nice solutions, however I’m failing to grasp particularly when individuals say that you just want an IP deal with assigned to carry out Proxy ARP.

I do not intend to debate whether or not utilizing Proxy ARP is a good suggestion or not, however for the sake of this query, let’s assume that I discovered a situation the place Proxy ARP can be the best choice or that the cons of utilizing it are negligible or acceptable, and so forth.

Let’s additionally assume we had a community like this one:

A --- R --- B

I’ll identify the community interfaces of every system utilizing this conference: eth_X_Y

  • X = system that owns the community interface
  • Y = system the community interface is related to.
  • A: The consumer system that desires to speak to the server (B). Its community interface is known as eth_a_r. Its IP deal with is 1.1.1.1 and its MAC deal with is 11:11:11:11:11:11.
  • R: The router that has proxy ARP enabled. It would not have any IP deal with assigned in any of its 2 interfaces. The community interface related to A is known as eth_r_a and its MAC deal with is 22:22:22:22:22:22. The community interface related to B is known as eth_r_b and its MAC deal with is 33:33:33:33:33:33.
  • B: The server A desires to ship IP packets to. eth_b_r‘s IP deal with = 4.4.4.4; MAC deal with = 44:44:44:44:44:44.

Let’s additionally assume {that a} community administrator configured the next routing desk entries in these units:

  • A: Ship packets with vacation spot IP deal with prefixed with 4.4.4.0/24 via eth_a_r
  • R: Ship packets with vacation spot IP deal with prefixed with 1.1.1.0/24 via eth_r_a
  • R: Ship packets with vacation spot IP deal with prefixed with 4.4.4.0/24 via eth_r_b
  • B: Ship packets with vacation spot IP deal with prefixed with 1.1.1.0/24 via eth_b_r

I believe I would like a step-by-step clarification of what precisely would occur when attempting to carry out a proxy arp request with out an ip deal with assigned within the router to see the place it may fail. One thing like this:

  1. Do one thing
  2. Do one thing else
  3. Do one thing that truly entails the IP deal with of the router since you want it to do X however you possibly can’t as a result of the interface would not have any IP deal with assigned.

That is what the step-by-step technique of sending an IP packet from A to B seems to be wish to me:

  1. A consumer executes the command ping 4.4.4.4 from A.
  2. With a view to know the MAC deal with of the system with IP deal with 4.4.4.4, an ARP request is created with these fields:
    • Supply {hardware} deal with: 11:11:11:11:11:11
    • Supply protocol deal with: 1.1.1.1
    • Vacation spot {hardware} deal with: 00:00:00:00:00:00
    • Vacation spot protocol deal with: 4.4.4.4
  3. The ARP request is broadcasted via eth_a_r.
  4. eth_r_a receives the request.
  5. The router checks its routing desk to see which interface it ought to use to ahead the ARP request as a result of it has Proxy ARP enabled.
  6. The router finds a match and forwards the ARP request via eth_r_b as a result of the ARP request is asking for 4.4.4.4.
  7. eth_r_b broadcasts the ARP request.
  8. eth_b_r receives the ARP request.
  9. eth_b_r checks if it has the IP deal with 4.4.4.4 assigned.
  10. eth_b_r creates an ARP response along with his MAC deal with:
    • Supply {hardware} deal with: 44:44:44:44:44:44
    • Supply protocol deal with: 4.4.4.4
    • Vacation spot {hardware} deal with: 11:11:11:11:11:11
    • Vacation spot protocol deal with: 1.1.1.1
  11. eth_b_r broadcasts the ARP response.
  12. eth_r_b receives the ARP response.
  13. The router checks its routing desk and finds a match, so it forwards the ARP response via eth_r_a.
  14. eth_r_a broadcasts the ARP response.
  15. eth_a_r receives the ARP response.
  16. eth_a_r checks if ARP’s vacation spot MAC deal with is the one which it has assigned.
  17. The MAC addresses of the ARP response and the one it has assigned match, so it accepts the response.
  18. A creates the IP packet. The vacation spot MAC deal with is 44:44:44:44:44:44 and A is aware of it as a result of it acquired this data from the ARP response that it acquired earlier.
  19. A checks its routing desk to know which community interface ought to it ship the IP packet via for the vacation spot IP deal with of 4.4.4.4 and finds a match.
  20. eth_a_r sends the IP packet.
  21. eth_r_a receives the packet.
  22. The router checks its routing desk, finds a match for the vacation spot IP deal with of 4.4.4.4 as a result of it has a prefix of 4.4.4.0/24 and sends the packet via eth_r_b with out touching its MAC deal with as a result of it already is the right one: 44:44:44:44:44:44.
  23. eth_b_r receives the IP packet. Hurray!

I’ve not made a single point out of eth_r_a‘s and eth_r_b‘s IP addresses as a result of they don’t seem to be wanted in any respect. Due to this fact it should not be essential to have an IP deal with assigned in eth_r_b or eth_r_b.

Let’s overview the reasons given one after the other:

  • Ron Maupin’s reply:

    The router wouldn’t be an IP router for that router interface as a result of it will not know in regards to the community immediately related to it.

    However the router does know in regards to the networks immediately related to it because of its routing desk, so what precisely does he imply?

    A router not having an IP deal with for an interface implies that the router can’t use that interface for IP.

    However I simply confirmed how an IP packet will be despatched via the router regardless of it not having any IP deal with so it may be used for IP. What am I misunderstanding right here?

    Placing an IP deal with (both IPv4 or IPv6) allows IP for that interface.

    Perhaps the system is configured in such a manner that community interfaces that don’t have any IP deal with assigned do not do something in any respect. However that does not imply you possibly can’t route IP packets with out an IP deal with, it simply imply you can’t do this in that system particularly and since it’s configured in such a manner, not as a result of it is not attainable per se.

    Routers route packets between completely different networks, and a router that doesn’t know the way to attain a community will drop any packets destined for that community.

    This router would not must have any IP deal with assigned in any of its community interfaces to know the way to attain every community. It simply want a routing desk to know which community interface to ahead packets to.

    The IP deal with on the router interface tells the router the way to attain that community.

    However I assumed it was the routing desk what was getting used to know the way to attain the networks? How precisely would the router use the community interface’s IP deal with as a substitute of (or with) its routing desk to find out which community interface ought to it ahead IP packets to?

  • Jeremy Impson’s reply:

    The opposite facet you ask about is why the router wants an IP deal with with a view to present routing service. Typically, a router must know what networks are domestically related to it.

    However once more, how precisely are you even supposed to make use of the community interface’s IP deal with as a substitute (or with) the routing desk?

    It wants this data in order that, when making an attempt to ship a packet, it could possibly know when and if it ought to use the Layer 2 community service to ship the body, or if it ought to to a subsequent hop route (whether or not static, discovered, or final resort). This is rather like every other IP processing node.

    What precisely are the steps involving the choice of “when and if it ought to use the Layer 2 community service to ship the body, or if it ought to to a subsequent hop route“, and through which of these steps is the community interface’s IP deal with used and the way?

    So you may invent another manner for a router to grasp when a packet will get native supply or is forwarded, one that does not require it having an IP deal with.

    However I did not need to invent something new, I simply used the routing desk entries to make the selections.

  • Zac67:

    A node with out IP deal with is not reachable. When you possibly can’t attain the gateway, the route is not usable.

    I needn’t attain the router itself, I solely want to achieve the issues which might be on the opposite facet of the router.

    Alternatively, if a router has no IP deal with on one in all its interfaces, how is it presupposed to know when to reply to ARP requests on one other interface, ie. which addresses are literally native to it when different routers proxy distant addresses?

    I’m not 100% certain I perceive what you imply. I’ll assume that, in my situation, eth_r_b has some IP deal with assigned and A desires to study its MAC deal with. Then the router would carry out as comply with:

    1. eth_r_a receives the ARP request.
    2. The router itself checks if any of its community interfaces has the requested IP deal with assigned. If there may be any, reply with its MAC deal with. If there may be none, ahead the request. That’s, if the one answering the ARP request is the system itself.

    If ARP requests are solely meant to be answered by community interfaces (and never the units they’re hooked up to) then I can see the issue right here. It is sensible to suppose that it’s the community interface and never the system the one presupposed to reply the ARP request, in any other case the system may as properly reply additionally for different IP addresses which might be assigned to different community interfaces which might be related to a special community.

    Due to this fact, the one units that would attain that community interface itself are those related to the identical facet of the router of that community interface. That is, to date, the one clarification that is sensible to me, although technically talking it nonetheless looks as if you solely want IP addresses assigned to every interface to have the ability to attain the router itself and nothing else, so you possibly can nonetheless ARP the units of every facet of the router in any case.

Related Articles

LEAVE A REPLY

Please enter your comment!
Please enter your name here

Latest Articles