Rails: `request.remote_ip` рдЧрд▓рдд рдЖрдИрдкреА рдкрддрд╛ рд▓реМрдЯрд╛рддрд╛ рдкреНрд░рддреАрдд рд╣реЛрддрд╛ рд╣реИ

рдХреЛ рдирд┐рд░реНрдорд┐рдд 18 рдЕрдХреНрддреВре░ 2012  ┬╖  3рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ  ┬╖  рд╕реНрд░реЛрдд: rails/rails

рдРрд╕рд╛ рдкреНрд░рддреАрдд рд╣реЛрддрд╛ рд╣реИ рдХрд┐ рджреВрд░рд╕реНрде IP рдорд┐рдбрд▓рд╡реЗрдпрд░ рдХреЗ рд▓рд┐рдП рдЕрдВрддрд┐рдо рдкреНрд░рддрд┐рдмрджреНрдзрддрд╛ рдиреЗ рдЬрд╛рдирдмреВрдЭрдХрд░ рдЙрд╕ рдПрд▓реНрдЧреЛрд░рд┐рдердо рдХреЛ рдЙрд▓рдЯ рджрд┐рдпрд╛ рд╣реИ рдЬреЛ рджреВрд░рд╕реНрде IP рдХреЛ рдкрд░рджреЗ рдХреЗ рдкреАрдЫреЗ рдХреА рд╕реВрдЪреА рд╕реЗ рдмрд╛рд╣рд░ рдирд┐рдХрд╛рд▓рддрд╛ рд╣реИред рджреБрд░реНрднрд╛рдЧреНрдп рд╕реЗ, рдкрд┐рдЫрд▓рд╛ рдПрд▓реНрдЧреЛрд░рд┐рдердо (рдЬреЛ рдореИрдВрдиреЗ рд▓рд┐рдЦрд╛ рдерд╛, рдФрд░ рдХреБрдЫ рд▓рд╛рдЦ рдЧреНрд░рд╛рд╣рдХреЛрдВ рдХреЗ рд╕рд╛рде рдЙрддреНрдкрд╛рджрди рдореЗрдВ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдерд╛: рдкреА) рд╡рд╣ рд╣реИ рдЬреЛ рдПрдХреНрд╕-рдлреЙрд░рд╡рд░реНрдб-рдлреЙрд░ рдХреЛ рдХрд╛рдо рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд▓рд┐рдЦрд┐рдд рдХрд▓реНрдкрдирд╛ рд╕реЗ рд╕рд╣рдордд рд╣реИред

рдЯреАрдПрд▓; рдбреЙ plz рдкреНрд░рддрд┐рдмрджреНрдзрддрд╛ рдХреЗ рдЙрд╕ рд╣рд┐рд╕реНрд╕реЗ рдХреЛ рд╡рд╛рдкрд╕ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдореИрдВ рд░реЗрд▓ рдХреЛ рдЕрдкрдЧреНрд░реЗрдб рдХрд░рдиреЗ рдореЗрдВ рд╕рдХреНрд╖рдо рд╣реЛрдирд╛ рдЪрд╛рд╣рддрд╛ рд╣реВрдВ рдФрд░ рдЕрднреА рднреА remote_ip рд╕рд╣реА рдЖрдИрдкреА рдкрддрд╛ рд╡рд╛рдкрд╕ рдХрд░ рд╕рдХрддрд╛ рд╣реВрдВред

рд╕рдмрд╕реЗ рдЙрдкрдпреЛрдЧреА рдЯрд┐рдкреНрдкрдгреА

рдпрд╣ рдЕрднреА рднреА рдПрдХ рдореБрджреНрджрд╛ рд╣реИред рд╕реНрдЯреИрдХ рдУрд╡рд░рдлреНрд▓реЛ рдкреЛрд╕реНрдЯ рд╕реЗ: https://stackoverflow.com/questions/5636032/request-remote-ip-returns-wrong-ip
https://stackoverflow.com/questions/4465476/rails-get-client-ip-address
https://stackoverflow.com/questions/19317255/rails-how-to-obtain-visitors-ip-address
https://stackoverflow.com/questions/1226959/how-to-get-client-ip-and-server-ip-using-rails

рдпреЗ рд╕рднреА рдкреНрд░рд╢реНрди request.remote_ip рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреА рдУрд░ рдЗрд╢рд╛рд░рд╛ рдХрд░рддреЗ рд╣реИрдВред рд▓реЗрдХрд┐рди рд╡рд╣ рдХрднреА-рдХрднреА рдЧрд▓рдд IP рдкрддрд╛ рджреЗрддрд╛ рд╣реИред рдореИрдВ рдПрдХ рд╕рд╣реА рдЖрдИрдкреА рдкрддрд╛ рдкреНрд░рд╛рдкреНрдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рдХреЛрдб рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддрд╛ рд╣реВрдВред

      response = open('https://jsonip.com/').read
      data = JSON.parse(response)
      ip_address = data['ip']
    rescue
      ip_address = request.remote_ip
    end

рдХреНрдпрд╛ рднрд╡рд┐рд╖реНрдп рдореЗрдВ рд░рд┐рд▓реАрдЬ рдореЗрдВ рдЗрд╕реЗ рдареАрдХ рдХрд░рдиреЗ рдХреА рдХреЛрдИ рд╕рдВрднрд╛рд╡рдирд╛ рд╣реИ?

рд╕рднреА 3 рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

рдпрд╣ рдЕрднреА рднреА рдПрдХ рдореБрджреНрджрд╛ рд╣реИред рд╕реНрдЯреИрдХ рдУрд╡рд░рдлреНрд▓реЛ рдкреЛрд╕реНрдЯ рд╕реЗ: https://stackoverflow.com/questions/5636032/request-remote-ip-returns-wrong-ip
https://stackoverflow.com/questions/4465476/rails-get-client-ip-address
https://stackoverflow.com/questions/19317255/rails-how-to-obtain-visitors-ip-address
https://stackoverflow.com/questions/1226959/how-to-get-client-ip-and-server-ip-using-rails

рдпреЗ рд╕рднреА рдкреНрд░рд╢реНрди request.remote_ip рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреА рдУрд░ рдЗрд╢рд╛рд░рд╛ рдХрд░рддреЗ рд╣реИрдВред рд▓реЗрдХрд┐рди рд╡рд╣ рдХрднреА-рдХрднреА рдЧрд▓рдд IP рдкрддрд╛ рджреЗрддрд╛ рд╣реИред рдореИрдВ рдПрдХ рд╕рд╣реА рдЖрдИрдкреА рдкрддрд╛ рдкреНрд░рд╛рдкреНрдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рдХреЛрдб рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддрд╛ рд╣реВрдВред

      response = open('https://jsonip.com/').read
      data = JSON.parse(response)
      ip_address = data['ip']
    rescue
      ip_address = request.remote_ip
    end

рдХреНрдпрд╛ рднрд╡рд┐рд╖реНрдп рдореЗрдВ рд░рд┐рд▓реАрдЬ рдореЗрдВ рдЗрд╕реЗ рдареАрдХ рдХрд░рдиреЗ рдХреА рдХреЛрдИ рд╕рдВрднрд╛рд╡рдирд╛ рд╣реИ?

рдХреГрдкрдпрд╛ рдЬрд╛рдВрдЪреЗрдВ рдХрд┐ рдХреНрдпрд╛ рдпрд╣ рдорджрдж рдХрд░ рд╕рдХрддрд╛ рд╣реИред рд░рд┐рдореЛрдЯ_рдЖрдИрдкреА рдХреЛ рд╕рдВрд╢реЛрдзрд┐рдд/рдУрд╡рд░рд░рд╛рдЗрдб рдХрд░реЗрдВред
.

рдРрд╕рд╛ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ #24521 рдЗрд╕ рд╕рдорд╕реНрдпрд╛ рдХреЛ рдареАрдХ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╣реИ? рдХреНрдпрд╛ рдЖрдк рдореЗрдВ рд╕реЗ рдХреЛрдИ рдЙрд╕ рдЬрдирд╕рдВрдкрд░реНрдХ рдХреЛ рдЖрдЧреЗ рдмрдврд╝рд╛рдиреЗ рдХреЗ рд▓рд┐рдП рддреИрдпрд╛рд░ рд╣реЛрдЧрд╛?

рдХреНрдпрд╛ рдпрд╣ рдкреГрд╖реНрда рдЙрдкрдпреЛрдЧреА рдерд╛?
0 / 5 - 0 рд░реЗрдЯрд┐рдВрдЧреНрд╕

рд╕рдВрдмрдВрдзрд┐рдд рдореБрджреНрджреЛрдВ

kassiansun picture kassiansun  ┬╖  3рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

tgautier picture tgautier  ┬╖  3рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

dhh picture dhh  ┬╖  3рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

ianloblaw picture ianloblaw  ┬╖  3рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

joevandyk picture joevandyk  ┬╖  3рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ