switch assigning IP

We have a private network consisting of 10/100 switches that have 1 gigbit input and output. The switches are daisy chained using fiber connections between switches. For very short distances, the connection between switches might be copper. The communications will be using IP.

We want to develop an automated method of assigning fixed IP addresses to nodes on the switches based on their location in the daisy chain. For example, a node on the second switch would be assigned a

192.168.2.x address. Is there a way of determining the switch location at startup so an IP address can be assigned in such a way? One thought was using the TTL in an IP frame similar to what tracert does but I don't think switches are considered as a hop and so don't decrement the TTL. This would be done from a master node that is connected to the first switch via a 1 GB link. Another thought was using a round trip propagation delay for a packet to determine their distance from the master node. Is this possible? The thought was that the switch nodes would come up with a random address and would notify the master node who then would assign them a new address. We have complete control of the software running on the switch nodes as far as changing IP addresses. Any other suggestions are welcome?

Another question I have is what the limitations are on the number of switches in this daisy chain.

Reply to
motorpg
Loading thread data ...

What problem are you trying to solve with your IP numbering scheme ?

Reply to
Al Dykes

In article , wrote: :We have a private network consisting of 10/100 switches that have 1 :gigbit input and output. The switches are daisy chained using fiber :connections between switches. For very short distances, the connection :between switches might be copper. The communications will be using IP.

:We want to develop an automated method of assigning fixed IP addresses :to nodes on the switches based on their location in the daisy chain. :For example, a node on the second switch would be assigned a :192.168.2.x address. Is there a way of determining the switch location :at startup so an IP address can be assigned in such a way?

You could possibly figure out the switch location by examining the spanning tree negotiations. The hard part would be in assigning the IP address based upon that. Most switches don't have that kind of flexibility, and you can't do it from outside via IP because the switches don't have an IP until you assign one.

:One thought :was using the TTL in an IP frame similar to what tracert does but I :don't think switches are considered as a hop and so don't decrement the :TTL.

That's correct.

:This would be done from a master node that is connected to the :first switch via a 1 GB link. Another thought was using a round trip :propagation delay for a packet to determine their distance from the :master node. Is this possible? The thought was that the switch nodes :would come up with a random address and would notify the master node :who then would assign them a new address. We have complete control of :the software running on the switch nodes as far as changing IP :addresses.

Total software control? Ah, you have a chance then. Does the control extend as far as sending custom packets between the switches? If not then you might be able to figure something out based upon the spanning tree results.

:Another question I have is what the limitations are on the number of :switches in this daisy chain.

Spanning tree is nominally restricted to 7, but that 7 is due to timing factors that apply less when you have gigabit links, so you might be able to get away with a longer chain.

Reply to
Walter Roberson

So how would one use the spanning tree results. I am not too familiar with this. Yes we can send custom packets between switches so how would we use that?

Walter Robers> > :We have a private network consisting of 10/100 switches that have 1

connection

addresses

location

Reply to
motorpg

In article , wrote: :So how would one use the spanning tree results. I am not too familiar :with this. Yes we can send custom packets between switches so how would :we use that?

You must have already come up with some method to figure out that the first switch in the chain was attached to the controller node, in order to assign the initial address. So once the first device has an initial address, it can send out a custom broadcast packet to the uplink ports; the packet would need to contain little more than its IP address. When a device in the chain received the packet, if it already had an IP address, it would drop the packet. If it did not already have an IP address, it would eat the packet, assign itself the next sequential IP address, and then send out its own packet to the uplinks.

This algorithm fails if you have topology branches. If you need to be able to handle topology branches, then you need to decide how you want the devices to number themselves in such a case; then you can probably use a modification of the spanning tree algorithm to figure out which device is where. For example, one of the parameters sent with spanning tree is the egress port number; with that information in hand, you could even do a left-to-right depth-first threading if that was what you wanted.

But I would have to agree with the question put by the other poster: what problem are you trying to solve? To which I would add, "Wouldn't it be easier to use DHCP?" Do the devices really have to be numbered in sequential order, or would be enough to number them in block but in no fixed order within that block? Is there really any information you gain from sequential IP addressing that you couldn't better gain through SNMP?

Reply to
Walter Roberson

Cabling-Design.com Forums website is not affiliated with any of the manufacturers or service providers discussed here. All logos and trade names are the property of their respective owners.