This invention discloses user devices carrying out direct penetration communication of different user devices under different NAT and a communication method, in which, a selected local port sends a detection message to an outer network assistant detection device and receives a response message from it and obtains a NAT source port of said detection message transformed by NAT and determines if the selected local one is the penetration port by comparing NAT source ports of multiple messages, then informs the corresponding NAN address and the NAT penetration port to another user device of different NAT by an outer network device so as to carry out direct penetration communication taking the object NAT source address and NAT penetration port as the destination address and port via the determined local penetration port. |