Does every host on the LAN share the same ARP table, or do hosts keep them individually?
I'm just learning about ARP. I'm a little bit confused. My confusion is better explained in a scenario.
Host A is communicating with Host B. Host A knows Host B's IP address, but not it's MAC address. Therefore, it send an ARP request to the LAN and Host B replies with its Mac address. So now Host A is aware of Host B's Mac address, and can make an entry with Host B's Mac address into an ARP table.
My questions regarding the ARP table
- Is Host A updating its own ARP table, or a shared ARP table amongst the entire LAN?
** Question 2 is only applicable if the answer to question 1 is "each host keeps their own ARP table"
- If the ARP able is not shared amongst all the LAN, would other hosts on the same LAN be made aware of this new information that Host A just received, if those other hosts did not have it already?
- Let me expand on this: Let's assume a Host C and Host D. Now that Host A has entered Host B's MAC into its ARP table, would Host C and Host D be made aware of Host B's MAC address in their respective ARP tables?
ip mac-address arp layer3
New contributor
add a comment |
I'm just learning about ARP. I'm a little bit confused. My confusion is better explained in a scenario.
Host A is communicating with Host B. Host A knows Host B's IP address, but not it's MAC address. Therefore, it send an ARP request to the LAN and Host B replies with its Mac address. So now Host A is aware of Host B's Mac address, and can make an entry with Host B's Mac address into an ARP table.
My questions regarding the ARP table
- Is Host A updating its own ARP table, or a shared ARP table amongst the entire LAN?
** Question 2 is only applicable if the answer to question 1 is "each host keeps their own ARP table"
- If the ARP able is not shared amongst all the LAN, would other hosts on the same LAN be made aware of this new information that Host A just received, if those other hosts did not have it already?
- Let me expand on this: Let's assume a Host C and Host D. Now that Host A has entered Host B's MAC into its ARP table, would Host C and Host D be made aware of Host B's MAC address in their respective ARP tables?
ip mac-address arp layer3
New contributor
add a comment |
I'm just learning about ARP. I'm a little bit confused. My confusion is better explained in a scenario.
Host A is communicating with Host B. Host A knows Host B's IP address, but not it's MAC address. Therefore, it send an ARP request to the LAN and Host B replies with its Mac address. So now Host A is aware of Host B's Mac address, and can make an entry with Host B's Mac address into an ARP table.
My questions regarding the ARP table
- Is Host A updating its own ARP table, or a shared ARP table amongst the entire LAN?
** Question 2 is only applicable if the answer to question 1 is "each host keeps their own ARP table"
- If the ARP able is not shared amongst all the LAN, would other hosts on the same LAN be made aware of this new information that Host A just received, if those other hosts did not have it already?
- Let me expand on this: Let's assume a Host C and Host D. Now that Host A has entered Host B's MAC into its ARP table, would Host C and Host D be made aware of Host B's MAC address in their respective ARP tables?
ip mac-address arp layer3
New contributor
I'm just learning about ARP. I'm a little bit confused. My confusion is better explained in a scenario.
Host A is communicating with Host B. Host A knows Host B's IP address, but not it's MAC address. Therefore, it send an ARP request to the LAN and Host B replies with its Mac address. So now Host A is aware of Host B's Mac address, and can make an entry with Host B's Mac address into an ARP table.
My questions regarding the ARP table
- Is Host A updating its own ARP table, or a shared ARP table amongst the entire LAN?
** Question 2 is only applicable if the answer to question 1 is "each host keeps their own ARP table"
- If the ARP able is not shared amongst all the LAN, would other hosts on the same LAN be made aware of this new information that Host A just received, if those other hosts did not have it already?
- Let me expand on this: Let's assume a Host C and Host D. Now that Host A has entered Host B's MAC into its ARP table, would Host C and Host D be made aware of Host B's MAC address in their respective ARP tables?
ip mac-address arp layer3
ip mac-address arp layer3
New contributor
New contributor
New contributor
asked 7 hours ago
brnnbrnn
161
161
New contributor
New contributor
add a comment |
add a comment |
3 Answers
3
active
oldest
votes
Actually, every interface in a device has its own ARP table. A host could have several ARP tables (one for each interface it has). ARP tables are not shared between hosts, or even among interfaces in the same host, but a host may hear ARP traffic on the network and update the ARP table of the interface where the ARP traffic is heard.
add a comment |
To answer the question another way: what mechanisms might be available to share an ARP table? This is one of the fundamentals for IP over ethernet (and any similar layer 2 network). If a device was trying to share ARP information with another device, it would have to do something like broadcast the entries of the ARP table, knowing when to get updates when a device is booting etc: all of which is much more complex than the way that ARP works, which is that a given device is responsible for telling others about itself, and broadcast queries when a device wants to know about another.
add a comment |
Let's look at each question specifically and expand upon your questions to help you better understand the situations that can occur.
1. Is Host A updating its own ARP table, or a shared ARP table amongst the entire LAN?
No, an ARP table is not shared among the entire LAN. Each device has it's own ARP table. It is the devices responsibility to manage their own ARP tables, including the local interface associated with the entry.
2. If the ARP able is not shared amongst all the LAN, would other hosts on the same LAN be made aware of this new information that Host A just received, if those other hosts did not have it already?
The short answer for a switched environment is no. If you view the format of an ARP Packet you will see that the packet includes both the sender hardware MAC address and IP. When an ARP request packet is sent from the requesting device, the packet is sent to the broadcast address and is forwarded by the switch to all interfaces (devices) on the LAN. This allows the device that has the requested IP Address to reply and target the reply packet to the specific IP and MAC Address of device that requested it. It is the network switches responsibility to maintain a MAC address table to forward the packet only to the interface on the switch of the specific device in the packet. Here is an example of an outgoing ARP packet from 10.0.0.1 in search of 10.0.0.2.
15:00:37.395072 ARP, Ethernet (len 6), IPv4 (len 4), Request who-has 10.0.0.2 tell 10.0.0.1, length 46
That being said, it is possible for devices to send out a gratuitous ARP reply packet announcing that they have the specific IP Address. The gratuitous ARP reply packet will be sent to the broadcast address, again, being forwarded to all devices on the LAN. In that situation, each device that receives that packet has to choose what to do with the packet. If they do not have the address in their ARP table, they usually ignore it. However, if they do have that address in their ARP table they should update any information that changed. Here is an example packet from 10.0.0.2 announcing to the LAN:
15:00:38.462135 ARP, Ethernet (len 6), IPv4 (len 4), Request who-has 10.0.0.2 (ff:ff:ff:ff:ff:ff) tell 10.0.0.2, length 46
All of the behavior detailed above prevents the devices from wasting processing cycles on packets that they do not need and memory on table entries that they do not need.
New contributor
add a comment |
Your Answer
StackExchange.ready(function() {
var channelOptions = {
tags: "".split(" "),
id: "496"
};
initTagRenderer("".split(" "), "".split(" "), channelOptions);
StackExchange.using("externalEditor", function() {
// Have to fire editor after snippets, if snippets enabled
if (StackExchange.settings.snippets.snippetsEnabled) {
StackExchange.using("snippets", function() {
createEditor();
});
}
else {
createEditor();
}
});
function createEditor() {
StackExchange.prepareEditor({
heartbeatType: 'answer',
autoActivateHeartbeat: false,
convertImagesToLinks: false,
noModals: true,
showLowRepImageUploadWarning: true,
reputationToPostImages: null,
bindNavPrevention: true,
postfix: "",
imageUploader: {
brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
allowUrls: true
},
noCode: true, onDemand: true,
discardSelector: ".discard-answer"
,immediatelyShowMarkdownHelp:true
});
}
});
brnn is a new contributor. Be nice, and check out our Code of Conduct.
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
var $window = $(window),
onScroll = function(e) {
var $elem = $('.new-login-left'),
docViewTop = $window.scrollTop(),
docViewBottom = docViewTop + $window.height(),
elemTop = $elem.offset().top,
elemBottom = elemTop + $elem.height();
if ((docViewTop elemBottom)) {
StackExchange.using('gps', function() { StackExchange.gps.track('embedded_signup_form.view', { location: 'question_page' }); });
$window.unbind('scroll', onScroll);
}
};
$window.on('scroll', onScroll);
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function () {
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fnetworkengineering.stackexchange.com%2fquestions%2f57023%2fdoes-every-host-on-the-lan-share-the-same-arp-table-or-do-hosts-keep-them-indiv%23new-answer', 'question_page');
}
);
Post as a guest
Required, but never shown
3 Answers
3
active
oldest
votes
3 Answers
3
active
oldest
votes
active
oldest
votes
active
oldest
votes
Actually, every interface in a device has its own ARP table. A host could have several ARP tables (one for each interface it has). ARP tables are not shared between hosts, or even among interfaces in the same host, but a host may hear ARP traffic on the network and update the ARP table of the interface where the ARP traffic is heard.
add a comment |
Actually, every interface in a device has its own ARP table. A host could have several ARP tables (one for each interface it has). ARP tables are not shared between hosts, or even among interfaces in the same host, but a host may hear ARP traffic on the network and update the ARP table of the interface where the ARP traffic is heard.
add a comment |
Actually, every interface in a device has its own ARP table. A host could have several ARP tables (one for each interface it has). ARP tables are not shared between hosts, or even among interfaces in the same host, but a host may hear ARP traffic on the network and update the ARP table of the interface where the ARP traffic is heard.
Actually, every interface in a device has its own ARP table. A host could have several ARP tables (one for each interface it has). ARP tables are not shared between hosts, or even among interfaces in the same host, but a host may hear ARP traffic on the network and update the ARP table of the interface where the ARP traffic is heard.
answered 7 hours ago
Ron Maupin♦Ron Maupin
65.6k1369123
65.6k1369123
add a comment |
add a comment |
To answer the question another way: what mechanisms might be available to share an ARP table? This is one of the fundamentals for IP over ethernet (and any similar layer 2 network). If a device was trying to share ARP information with another device, it would have to do something like broadcast the entries of the ARP table, knowing when to get updates when a device is booting etc: all of which is much more complex than the way that ARP works, which is that a given device is responsible for telling others about itself, and broadcast queries when a device wants to know about another.
add a comment |
To answer the question another way: what mechanisms might be available to share an ARP table? This is one of the fundamentals for IP over ethernet (and any similar layer 2 network). If a device was trying to share ARP information with another device, it would have to do something like broadcast the entries of the ARP table, knowing when to get updates when a device is booting etc: all of which is much more complex than the way that ARP works, which is that a given device is responsible for telling others about itself, and broadcast queries when a device wants to know about another.
add a comment |
To answer the question another way: what mechanisms might be available to share an ARP table? This is one of the fundamentals for IP over ethernet (and any similar layer 2 network). If a device was trying to share ARP information with another device, it would have to do something like broadcast the entries of the ARP table, knowing when to get updates when a device is booting etc: all of which is much more complex than the way that ARP works, which is that a given device is responsible for telling others about itself, and broadcast queries when a device wants to know about another.
To answer the question another way: what mechanisms might be available to share an ARP table? This is one of the fundamentals for IP over ethernet (and any similar layer 2 network). If a device was trying to share ARP information with another device, it would have to do something like broadcast the entries of the ARP table, knowing when to get updates when a device is booting etc: all of which is much more complex than the way that ARP works, which is that a given device is responsible for telling others about itself, and broadcast queries when a device wants to know about another.
answered 6 hours ago
jonathanjojonathanjo
11.5k1934
11.5k1934
add a comment |
add a comment |
Let's look at each question specifically and expand upon your questions to help you better understand the situations that can occur.
1. Is Host A updating its own ARP table, or a shared ARP table amongst the entire LAN?
No, an ARP table is not shared among the entire LAN. Each device has it's own ARP table. It is the devices responsibility to manage their own ARP tables, including the local interface associated with the entry.
2. If the ARP able is not shared amongst all the LAN, would other hosts on the same LAN be made aware of this new information that Host A just received, if those other hosts did not have it already?
The short answer for a switched environment is no. If you view the format of an ARP Packet you will see that the packet includes both the sender hardware MAC address and IP. When an ARP request packet is sent from the requesting device, the packet is sent to the broadcast address and is forwarded by the switch to all interfaces (devices) on the LAN. This allows the device that has the requested IP Address to reply and target the reply packet to the specific IP and MAC Address of device that requested it. It is the network switches responsibility to maintain a MAC address table to forward the packet only to the interface on the switch of the specific device in the packet. Here is an example of an outgoing ARP packet from 10.0.0.1 in search of 10.0.0.2.
15:00:37.395072 ARP, Ethernet (len 6), IPv4 (len 4), Request who-has 10.0.0.2 tell 10.0.0.1, length 46
That being said, it is possible for devices to send out a gratuitous ARP reply packet announcing that they have the specific IP Address. The gratuitous ARP reply packet will be sent to the broadcast address, again, being forwarded to all devices on the LAN. In that situation, each device that receives that packet has to choose what to do with the packet. If they do not have the address in their ARP table, they usually ignore it. However, if they do have that address in their ARP table they should update any information that changed. Here is an example packet from 10.0.0.2 announcing to the LAN:
15:00:38.462135 ARP, Ethernet (len 6), IPv4 (len 4), Request who-has 10.0.0.2 (ff:ff:ff:ff:ff:ff) tell 10.0.0.2, length 46
All of the behavior detailed above prevents the devices from wasting processing cycles on packets that they do not need and memory on table entries that they do not need.
New contributor
add a comment |
Let's look at each question specifically and expand upon your questions to help you better understand the situations that can occur.
1. Is Host A updating its own ARP table, or a shared ARP table amongst the entire LAN?
No, an ARP table is not shared among the entire LAN. Each device has it's own ARP table. It is the devices responsibility to manage their own ARP tables, including the local interface associated with the entry.
2. If the ARP able is not shared amongst all the LAN, would other hosts on the same LAN be made aware of this new information that Host A just received, if those other hosts did not have it already?
The short answer for a switched environment is no. If you view the format of an ARP Packet you will see that the packet includes both the sender hardware MAC address and IP. When an ARP request packet is sent from the requesting device, the packet is sent to the broadcast address and is forwarded by the switch to all interfaces (devices) on the LAN. This allows the device that has the requested IP Address to reply and target the reply packet to the specific IP and MAC Address of device that requested it. It is the network switches responsibility to maintain a MAC address table to forward the packet only to the interface on the switch of the specific device in the packet. Here is an example of an outgoing ARP packet from 10.0.0.1 in search of 10.0.0.2.
15:00:37.395072 ARP, Ethernet (len 6), IPv4 (len 4), Request who-has 10.0.0.2 tell 10.0.0.1, length 46
That being said, it is possible for devices to send out a gratuitous ARP reply packet announcing that they have the specific IP Address. The gratuitous ARP reply packet will be sent to the broadcast address, again, being forwarded to all devices on the LAN. In that situation, each device that receives that packet has to choose what to do with the packet. If they do not have the address in their ARP table, they usually ignore it. However, if they do have that address in their ARP table they should update any information that changed. Here is an example packet from 10.0.0.2 announcing to the LAN:
15:00:38.462135 ARP, Ethernet (len 6), IPv4 (len 4), Request who-has 10.0.0.2 (ff:ff:ff:ff:ff:ff) tell 10.0.0.2, length 46
All of the behavior detailed above prevents the devices from wasting processing cycles on packets that they do not need and memory on table entries that they do not need.
New contributor
add a comment |
Let's look at each question specifically and expand upon your questions to help you better understand the situations that can occur.
1. Is Host A updating its own ARP table, or a shared ARP table amongst the entire LAN?
No, an ARP table is not shared among the entire LAN. Each device has it's own ARP table. It is the devices responsibility to manage their own ARP tables, including the local interface associated with the entry.
2. If the ARP able is not shared amongst all the LAN, would other hosts on the same LAN be made aware of this new information that Host A just received, if those other hosts did not have it already?
The short answer for a switched environment is no. If you view the format of an ARP Packet you will see that the packet includes both the sender hardware MAC address and IP. When an ARP request packet is sent from the requesting device, the packet is sent to the broadcast address and is forwarded by the switch to all interfaces (devices) on the LAN. This allows the device that has the requested IP Address to reply and target the reply packet to the specific IP and MAC Address of device that requested it. It is the network switches responsibility to maintain a MAC address table to forward the packet only to the interface on the switch of the specific device in the packet. Here is an example of an outgoing ARP packet from 10.0.0.1 in search of 10.0.0.2.
15:00:37.395072 ARP, Ethernet (len 6), IPv4 (len 4), Request who-has 10.0.0.2 tell 10.0.0.1, length 46
That being said, it is possible for devices to send out a gratuitous ARP reply packet announcing that they have the specific IP Address. The gratuitous ARP reply packet will be sent to the broadcast address, again, being forwarded to all devices on the LAN. In that situation, each device that receives that packet has to choose what to do with the packet. If they do not have the address in their ARP table, they usually ignore it. However, if they do have that address in their ARP table they should update any information that changed. Here is an example packet from 10.0.0.2 announcing to the LAN:
15:00:38.462135 ARP, Ethernet (len 6), IPv4 (len 4), Request who-has 10.0.0.2 (ff:ff:ff:ff:ff:ff) tell 10.0.0.2, length 46
All of the behavior detailed above prevents the devices from wasting processing cycles on packets that they do not need and memory on table entries that they do not need.
New contributor
Let's look at each question specifically and expand upon your questions to help you better understand the situations that can occur.
1. Is Host A updating its own ARP table, or a shared ARP table amongst the entire LAN?
No, an ARP table is not shared among the entire LAN. Each device has it's own ARP table. It is the devices responsibility to manage their own ARP tables, including the local interface associated with the entry.
2. If the ARP able is not shared amongst all the LAN, would other hosts on the same LAN be made aware of this new information that Host A just received, if those other hosts did not have it already?
The short answer for a switched environment is no. If you view the format of an ARP Packet you will see that the packet includes both the sender hardware MAC address and IP. When an ARP request packet is sent from the requesting device, the packet is sent to the broadcast address and is forwarded by the switch to all interfaces (devices) on the LAN. This allows the device that has the requested IP Address to reply and target the reply packet to the specific IP and MAC Address of device that requested it. It is the network switches responsibility to maintain a MAC address table to forward the packet only to the interface on the switch of the specific device in the packet. Here is an example of an outgoing ARP packet from 10.0.0.1 in search of 10.0.0.2.
15:00:37.395072 ARP, Ethernet (len 6), IPv4 (len 4), Request who-has 10.0.0.2 tell 10.0.0.1, length 46
That being said, it is possible for devices to send out a gratuitous ARP reply packet announcing that they have the specific IP Address. The gratuitous ARP reply packet will be sent to the broadcast address, again, being forwarded to all devices on the LAN. In that situation, each device that receives that packet has to choose what to do with the packet. If they do not have the address in their ARP table, they usually ignore it. However, if they do have that address in their ARP table they should update any information that changed. Here is an example packet from 10.0.0.2 announcing to the LAN:
15:00:38.462135 ARP, Ethernet (len 6), IPv4 (len 4), Request who-has 10.0.0.2 (ff:ff:ff:ff:ff:ff) tell 10.0.0.2, length 46
All of the behavior detailed above prevents the devices from wasting processing cycles on packets that they do not need and memory on table entries that they do not need.
New contributor
edited 3 hours ago
New contributor
answered 3 hours ago
NickNick
112
112
New contributor
New contributor
add a comment |
add a comment |
brnn is a new contributor. Be nice, and check out our Code of Conduct.
brnn is a new contributor. Be nice, and check out our Code of Conduct.
brnn is a new contributor. Be nice, and check out our Code of Conduct.
brnn is a new contributor. Be nice, and check out our Code of Conduct.
Thanks for contributing an answer to Network Engineering Stack Exchange!
- Please be sure to answer the question. Provide details and share your research!
But avoid …
- Asking for help, clarification, or responding to other answers.
- Making statements based on opinion; back them up with references or personal experience.
To learn more, see our tips on writing great answers.
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
var $window = $(window),
onScroll = function(e) {
var $elem = $('.new-login-left'),
docViewTop = $window.scrollTop(),
docViewBottom = docViewTop + $window.height(),
elemTop = $elem.offset().top,
elemBottom = elemTop + $elem.height();
if ((docViewTop elemBottom)) {
StackExchange.using('gps', function() { StackExchange.gps.track('embedded_signup_form.view', { location: 'question_page' }); });
$window.unbind('scroll', onScroll);
}
};
$window.on('scroll', onScroll);
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function () {
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fnetworkengineering.stackexchange.com%2fquestions%2f57023%2fdoes-every-host-on-the-lan-share-the-same-arp-table-or-do-hosts-keep-them-indiv%23new-answer', 'question_page');
}
);
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
var $window = $(window),
onScroll = function(e) {
var $elem = $('.new-login-left'),
docViewTop = $window.scrollTop(),
docViewBottom = docViewTop + $window.height(),
elemTop = $elem.offset().top,
elemBottom = elemTop + $elem.height();
if ((docViewTop elemBottom)) {
StackExchange.using('gps', function() { StackExchange.gps.track('embedded_signup_form.view', { location: 'question_page' }); });
$window.unbind('scroll', onScroll);
}
};
$window.on('scroll', onScroll);
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
var $window = $(window),
onScroll = function(e) {
var $elem = $('.new-login-left'),
docViewTop = $window.scrollTop(),
docViewBottom = docViewTop + $window.height(),
elemTop = $elem.offset().top,
elemBottom = elemTop + $elem.height();
if ((docViewTop elemBottom)) {
StackExchange.using('gps', function() { StackExchange.gps.track('embedded_signup_form.view', { location: 'question_page' }); });
$window.unbind('scroll', onScroll);
}
};
$window.on('scroll', onScroll);
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
var $window = $(window),
onScroll = function(e) {
var $elem = $('.new-login-left'),
docViewTop = $window.scrollTop(),
docViewBottom = docViewTop + $window.height(),
elemTop = $elem.offset().top,
elemBottom = elemTop + $elem.height();
if ((docViewTop elemBottom)) {
StackExchange.using('gps', function() { StackExchange.gps.track('embedded_signup_form.view', { location: 'question_page' }); });
$window.unbind('scroll', onScroll);
}
};
$window.on('scroll', onScroll);
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown