My company usually gives a /30 network for dedicated internet links. In this setup we usually waste 2 IP address which is network IP address and broadcast IP address. Would like to know in this setup is there a need for network/broadcast address?
Also would like to know what is the real purpose of network/broadcast IP address.
I know it is a little pain to have 2 wated IP in a /30 network, but afaik is it not anything we can do about it, is how the protocol is defined. The network IP address is just there to identify the network and its often used for routing processes. The broadcast address is just the "all the host" address, and its used for some L2 behaviour (like the ARP requests).
I have practically implemented /31 and established EBGP peering to one our providers. Without any issues its working. Just wondering why we need network and broadcast address. With IPv6 we do not have as such address which is most likely because of unicast routing..
Also giving my customers /30 might not make sense if /31 can do the job. Technically would like to understand the real need for network and broadcast address in a /30 network
Your question is exactlly the reason that Retana et. al. proposed RFC 3021. If you are using addresses on a multipoint link you might want a way to address the nodes on the link. Maybe. But if you are on a point to point link, chances are few that you would ever use services of addressing both nodes at the same time. As long as both sides are able to handle adequately 31 bit network masks, you should not have a problem, as you obviously have proven to yourself.