Start multiple Mavlink on SITL with the same port

Now, I’m working on simulation project with 3 UAVs on the same environment.

I have already managed to receive messaged from one drone to another drone as shown here.
________________
| UAV#1 port 14550 | <--------------------------------- (UAV#2 port 14551)
|_______________ | <--------------------------------- (UAV#3 port 14552)

However, what I would like to do is to send the message from UAV#1 port 14550 to UAV#2 and UAV#3 like this
________________
| UAV#1 port 14550 | ----------------------------------> (UAV#2 port 14551)
|_______________ | ----------------------------------> (UAV#3 port 14552)

In this file /init.d-posix/rcS, I start mavlink by

mavlink start -x -u 14550 -r 4000000 -o 14551
mavlink start -x -u 14550 -r 4000000 -o 14552

When launching the script, I suddenly got the error that “port 14550 already occupied”.

I suppose that we cannot use the same port to send messages to nodes more than one

So, I would like to ask that is there any way to do this.

If anyone could give me some advice about how to do it, I would really appreciate. Thank you.

@ChunzPS Multi-vehicle is already supported and explained in https://dev.px4.io/master/en/simulation/multi_vehicle_simulation_gazebo.html