support explicit port mapping