Fix exceptions

* Prevent exception when service monitor run overlap.
* Prevent exception on api access on None object.
* Prevent exception when service stop called twice.
* Logging remote ip instead of local ip when channel missing.
* Logging when service started twice.
Minor: the name is a bit confusing because it's actually checking if ids match first. Above it reads like "if it's not the same run then error"

Maybe `is_overlapping_ip()` ? or something like that?