A method for establishing a network path in a mesh network comprising multiple gateways, comprising: selecting, by a current node, a path from paths connecting the current node with a gateway as a trunk path, and recording information about the trunk path in a routing table, wherein the current node is a non-gateway node; receiving, by the current node, a gateway notification forwarded by a node which is on the trunk path and setting up a routing request timer; sending, by the current node, a routing request after the routing request timer times out to the gateway that sends the gateway notification, where the routing request carries information about the trunk path; and receiving a route reply sent by the gateway that sends the gateway notification through the trunk path, where the route reply is generated by the gateway that sends the gateway notification after the gateway that sends the gateway notification receives the routing request; wherein the selecting of a path from the paths connecting the current node with the gateway as the trunk path is: randomly selecting a path as the trunk path according to a gateway address or next hop address in the path and the address of the current node; wherein during the selection of the trunk path, load balancing factors are considered; and wherein the receiving the gateway notification forwarded by the node which is on the trunk path and setting up the routing request timer comprises: querying for and finding information about a route to the gateway that sends the gateway notification; and judging whether the route information is the information about the trunk path, and forwarding the gateway notification according to the route information and starting a routing request timer corresponding to an address of the gateway if the route information is the information about the trunk path. selecting, by a current node, a path from paths connecting the current node with a gateway as a trunk path, and recording information about the trunk path in a routing table, wherein the current node is a non-gateway node; receiving, by the current node, a gateway notification forwarded by a node which is on the trunk path and setting up a routing request timer; sending, by the current node, a routing request after the routing request timer times out to the gateway that sends the gateway notification, where the routing request carries information about the trunk path; and receiving a route reply sent by the gateway that sends the gateway notification through the trunk path, where the route reply is generated by the gateway that sends the gateway notification after the gateway that sends the gateway notification receives the routing request; wherein the selecting of a path from the paths connecting the current node with the gateway as the trunk path is: randomly selecting a path as the trunk path according to a gateway address or next hop address in the path and the address of the current node; wherein during the selection of the trunk path, load balancing factors are considered; and wherein the receiving the gateway notification forwarded by the node which is on the trunk path and setting up the routing request timer comprises: querying for and finding information about a route to the gateway that sends the gateway notification; and judging whether the route information is the information about the trunk path, and forwarding the gateway notification according to the route information and starting a routing request timer corresponding to an address of the gateway if the route information is the information about the trunk path. randomly selecting a path as the trunk path according to a gateway address or next hop address in the path and the address of the current node; wherein during the selection of the trunk path, load balancing factors are considered; and wherein the receiving the gateway notification forwarded by the node which is on the trunk path and setting up the routing request timer comprises: querying for and finding information about a route to the gateway that sends the gateway notification; and judging whether the route information is the information about the trunk path, and forwarding the gateway notification according to the route information and starting a routing request timer corresponding to an address of the gateway if the route information is the information about the trunk path. querying for and finding information about a route to the gateway that sends the gateway notification; and judging whether the route information is the information about the trunk path, and forwarding the gateway notification according to the route information and starting a routing request timer corresponding to an address of the gateway if the route information is the information about the trunk path.