1. The ip address as entered (192.168.200.0) is a network address, not a host address - but perhaps that is a misprint, especially given the error message " Bad mask /30 for address 192.168.200.1". From here on, let's assume you meant the ip address to be a legal 192.168.0.1 - but that brings us to ...

2. The "zero subnet" problem.

Firstly, I hope you can see that the subnet that 192.168.200.1/30 is indeed 192.168.200.0 - which is exactly the same as the class C network number, 192.168.200.0, hence it is the zero subnet. But so what?

Like many things with TCP/IP, the story starts "Once upon a time...". So, Once upon a time, before RFCs 1812 & 1878, when a major network was dived into subnets, there was a school of thought that went along the lines of "In certain contexts, it is useful to have fixed addresses with functional significance rather than as identifiers of specific hosts. When such usage is called for, the address zero is to be interpreted as meaning "this", as in "this network". The address of all ones are to be interpreted as meaning "all", as in "all hosts". For example, the address 128.9.255.255 could be interpreted as meaning all hosts on the network 128.9. Or, the address 0.0.0.37 could be interpreted as meaning host 37 on this network." [RFC 943-1985]. RFC 1716 (1994) was more direct "No subnet should be assigned the value zero or -1 (all one bits)."

The real problem was that routers had trouble interpreting a routing update that advertised something like 128.9.0.0 - is the route being advertised to the entire 128.9.0.0 B class network, or just the 128.9.0.0 subnet? - Whatever the 128.9.0.0 subnet is would depend on the mask being used. It might be 128.9.0.0/24 or 128.9.0.0/30. Routing protocols like RIP (v1) and IGRP do not advertise subnet masks, so the whole issue was avoided with the simple ruling in RFC 1716. (There is a similar story for the "all-ones" or broadcast subnet, but nothing to do with routing protocols. See http://www.cisco.com/en/US/tech/tk648/tk361/technologies_tech_note09186a0080093f18.shtml for an example)

Fast forward to more modern times, (like 1995) when RFCs 1812 and 1878 came along, we realised that not using the zero subnet (or the broadcast subnet either for that matter) was pretty stupid, since there were routing protocols around that could handle subnets. Specifically RFC 1878 says "This practice is obsolete! Modern software will be able to utilize all definable networks." So the practice was made redundant.

But what about our trusty Cisco (and other brand) routers that had been taught by the old school "thou shalt not use the zero subnet"? Well, Cisco had always had a command ip subnet-zero to allow the zero and broadcast subnets to be used. But prior to Cisco IOS Software Release 12.0, the ip subnet-zero global configuration command was required to be able to configure subnet zero on an interface, but in v12.0 this command became part of the default configuration. So, if you are configuring a router that is still running v11.x or earlier, when you enter the command:

R5( config-if)#ip address 192.168.200.0 255.255.255.252

You will get the response:

Bad mask /30 for address 192.168.200.1

To prevent this, add the ip zero-subnet to your global configuration before you configure the interface.