Please I like to know why I can't use my one IP on my nameserver like:
ns1.mydomain.com = 18.104.22.168 ns2.mydomain.com = (but the IP could be assigned here)
The questioner is asking to know why he can't use one IP address for two nameservers, but in fact he can use the same IP for both. This is often done for servers with only one IP address available to it.
Having a second IP address on the same server is of little benefit, since if that server goes down, both IP addresses will be unreachable. The only benefit is if the second IP is on another Ethernet connection and separate network...
As others point out, it's always recommended to use more than one server as a nameserver (not just IP address), in two or more different locations (e.g., continents) so that there isn't a single point of failure.
To keep your website up and running you should have multiple name servers. You are required to provide two, but three or four are recommended. Putting in the same IP address for both means that if that server goes down, your website goes down as well. For best results, the name servers you use should be distributed around the globe and run by a reputable DNS host.
DNS hosting is so cheap, there is no reason not to do it correctly. Expect to pay no more than $5/year for standard zone records for a single domain. There are even many free options.