diff --git a/src/or/main.c b/src/or/main.c index 013965db77..007106ae24 100644 --- a/src/or/main.c +++ b/src/or/main.c @@ -94,7 +94,7 @@ static char* nt_strerror(uint32_t errnum); #define FORCE_REGENERATE_DESCRIPTOR_INTERVAL 18*60*60 /* 18 hours */ #define CHECK_DESCRIPTOR_INTERVAL 60 /* one minute */ -#define CHECK_IPADDRESS_INTERVAL (5*60) /* five minutes */ +#define CHECK_IPADDRESS_INTERVAL (15*60) /* five minutes */ #define BUF_SHRINK_INTERVAL 60 /* one minute */ #define DESCRIPTOR_RETRY_INTERVAL 10 #define DESCRIPTOR_FAILURE_RESET_INTERVAL 60*60 diff --git a/src/or/router.c b/src/or/router.c index 9b15c82ea6..e38cd0a47a 100644 --- a/src/or/router.c +++ b/src/or/router.c @@ -910,15 +910,12 @@ check_descriptor_bandwidth_changed(time_t now) } } -#define MAX_IPADDRESS_CHANGE_FREQ 60*60 /** Check whether our own address as defined by the Address configuration * has changed. This is for routers that get their address from a service * like dyndns. If our address has changed, mark our descriptor dirty. */ void check_descriptor_ipaddress_changed(time_t now) { - static time_t last_changed = 0; - static time_t last_warned_lastchangetime = 0; uint32_t prev, cur; or_options_t *options = get_options(); @@ -943,19 +940,8 @@ check_descriptor_ipaddress_changed(time_t now) in_cur.s_addr = htonl(cur); tor_inet_ntoa(&in_cur, addrbuf_cur, sizeof(addrbuf_cur)); - if (last_changed+MAX_IPADDRESS_CHANGE_FREQ < now) { - info(LD_GENERAL,"Our IP Address has changed from %s to %s; rebuilding descriptor.", addrbuf_prev, addrbuf_cur); - mark_my_descriptor_dirty(); - last_changed = now; - last_warned_lastchangetime = 0; - } - else - { - if (last_warned_lastchangetime != last_changed) { - warn(LD_GENERAL,"Our IP Address seems to be flapping. It has changed twice within one hour (from %s to %s this time). Ignoring for now.", addrbuf_prev, addrbuf_cur); - last_warned_lastchangetime = last_changed; - } - } + info(LD_GENERAL,"Our IP Address has changed from %s to %s; rebuilding descriptor.", addrbuf_prev, addrbuf_cur); + mark_my_descriptor_dirty(); } }