Is there a tool for changing IP addresses in Linux? Something that will do everything for me so all I have to push is random IP or something like that. Something like macchanger except for IP addresses.
No, not in the sense you intend. Not on Linux, not on Windows, not on any other operating system, because that's intrinsic in how IP works. An IP address is assigned by your network provider, not something you can choose freely.
If you're talking about the IP address that you appear as on the Internet, then unless you have an unusual (and probably expensive) Internet connection, you simply don't get a choice: your IP address is whatever your ISP assigns you. It may be a static address (you always get the same), or a dynamic address (each time you connect, you may (or may not) get a different address, usually inside the same range), or you may have only a private address which the ISP translates to a public address that is shared between many customers. You can configure your computer (or rather, typically, your router) to use a different address, but then your ISP will reject your packets as invalid.
If you're talking about an IP address on a local network, then you may be able to use a different one; it depends how your network is set up. You'll need to use an address in the authorized range, and you'll need to make sure not to use the same address as someone else (otherwise neither of you will be able to effectively use the network).
An IP address changer would need to know what the allowable IP addresses are. In most cases, your computer (and your router, if applicable) gets an IP address via a protocol like DHCP; while it can choose to use a different one, as we've seen, that usually leads to network disruption — and the network administrator will typically try to ensure that only your connection is disrupted if you do something bad like this, not other people's.
If you get a dynamic IP address, then disconnecting and reconnecting may result in getting a different one (but typically in the same range), depending on how your network provider is set up and on the luck of the draw. To do that, disconnect your network connection and reconnect. In a typical home setup, you need to disconnect your router from the Internet, it isn't something you can do from your computer.
If you want to open connections from a different IP address, you need to go through a VPN. The network traffic that goes through the VPN goes from your machine to the VPN server (who sees them as coming from your IP address), and then goes out to the Internet coming from the VPN server. Some VPN services might offer a selection of IP addresses, e.g. they might have connectivity in different countries.
If you want to contact machines on the Internet without them knowing your IP address, you can use an anonymization service. A VPN intrinsically does that if it's configured not to reveal your information (that's up to the VPN provider). Tor is a freely usable service that anonymizes your network traffic (it's like having multiple layers of VPN that don't talk to each other and aren't supposed to keep any logs about your traffic).