diff --git a/channels/chan_iax2.c b/channels/chan_iax2.c
index 601ff940237a2a1a8ff9586c38c2f1cd421f3044..acc585372a2e57cb12377cc0aab6071f91bee5eb 100644
--- a/channels/chan_iax2.c
+++ b/channels/chan_iax2.c
@@ -13258,6 +13258,9 @@ static int set_config(const char *config_file, int reload)
 				ast_log(LOG_NOTICE, "trunkfreq must be between 10ms and 1000ms, using 1000ms instead.\n");
 				trunkfreq = 1000;
 			}
+			if (timer) {
+				ast_timer_set_rate(timer, 1000 / trunkfreq);
+			}
 		} else if (!strcasecmp(v->name, "trunkmtu")) {
 			mtuv = atoi(v->value);
 			if (mtuv  == 0 )