Upon trying to bind ZeroMQ Socket to google compute ephemeral IP result in

Cannot assign requested address (IOError)

I think, I get what is the reason for this because the ifconfig does not report the ephemeral IP in the listing

All it contain private IP (which I believe is NAT ip) that google internally uses.

Reference drawn from here

The Firewall rule for the desired port have be allowed to

zeromq-port   tcp:5437-5438   Apply to all targets

Now how does I work around with this and have ZeroMQ communicate across the across instances.

  • Is there any particular reason why you only want to bind to the external IP address, and not the internal one? – Andreas Veithen Nov 6 '15 at 18:18
  • If you need to bind your service to external IP you can accomplish this setup using forwarding rules(cloud.google.com/compute/docs/load-balancing/network/…). Forwarding rules will be assigned an external IP, you can use this IP to bind your service. – Faizan Nov 9 '15 at 20:09
  • If you were able to solve this, you can post the answer here for other community members who may be seeing this same issue. – Faizan Dec 21 '16 at 18:37

GCE network layer will forward packets destined to a particular external IP to the corresponding instance. “Ifconfig” will not list an interface having an external IP. Binding services to all interfaces should work on most applications.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.