A method for provisioning and managing a plurality of Internet-of-Things, IoT, devices, the method performed by a first network device in a network and comprising the steps of: receiving data originated from an Internet-of-Things, IoT, device; identifying a device type of the IoT device by analyzing data packets of the received data; obtaining a device profile for the IoT device from storage in a memory of the first network device or from a device profile database of a central management server downloaded via a secure networking protocol, the device profile being used for provisioning the IoT device to access the network; and provisioning, using the first network device, the IoT device using the device profile, wherein the provisioning comprises: at least one of: identifying a tunneling attribute in the device profile, wherein the tunneling attribute is used to create a tunnel between the first network device and a second network device for transmitting the data received from the IoT device, and wherein the tunneling attribute comprises a device-tunneled-redirect instruction for creating the tunnel between the first network device and the second network device, or identifying a constrained application protocol, CoAP, parameter in the device profile, wherein the CoAP parameter is used to zero touch provision one or more device attributes of the IoT device; and configuring the IoT device to communicate over the network via the first network device and the second network device. receiving data originated from an Internet-of-Things, IoT, device; identifying a device type of the IoT device by analyzing data packets of the received data; obtaining a device profile for the IoT device from storage in a memory of the first network device or from a device profile database of a central management server downloaded via a secure networking protocol, the device profile being used for provisioning the IoT device to access the network; and provisioning, using the first network device, the IoT device using the device profile, wherein the provisioning comprises: at least one of: identifying a tunneling attribute in the device profile, wherein the tunneling attribute is used to create a tunnel between the first network device and a second network device for transmitting the data received from the IoT device, and wherein the tunneling attribute comprises a device-tunneled-redirect instruction for creating the tunnel between the first network device and the second network device, or identifying a constrained application protocol, CoAP, parameter in the device profile, wherein the CoAP parameter is used to zero touch provision one or more device attributes of the IoT device; and configuring the IoT device to communicate over the network via the first network device and the second network device. at least one of: identifying a tunneling attribute in the device profile, wherein the tunneling attribute is used to create a tunnel between the first network device and a second network device for transmitting the data received from the IoT device, and wherein the tunneling attribute comprises a device-tunneled-redirect instruction for creating the tunnel between the first network device and the second network device, or identifying a constrained application protocol, CoAP, parameter in the device profile, wherein the CoAP parameter is used to zero touch provision one or more device attributes of the IoT device; and configuring the IoT device to communicate over the network via the first network device and the second network device.